rendered paste body#include <stdio.h>#include <pthread.h>#include <string.h>#include <unistd.h>int exitvariable = 1;char sharedresource[1024] = "";pthread_mutex_t resourcelocker = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;void *readfromstdin(void *buf){ while (1){ pthread_mutex_lock(&resourcelocker); printf("Enter your string: "); fflush(stdout); scanf("%s",buf); strncpy(sharedresource,(char *)buf,sizeof(sharedresource)); if(!strncmp((char *)buf,".",strlen((char*)buf))){ exitvariable=0; pthread_exit(0); } pthread_mutex_unlock(&resourcelocker); }}void *writetostdout(void *parm){ while(exitvariable){ pthread_mutex_lock(&resourcelocker); printf("Entered text is: %s\n",sharedresource); pthread_mutex_unlock(&resourcelocker); }}int main(){ char buf[1024]; pthread_t reader; pthread_t writer; if(pthread_create(&reader,NULL,readfromstdin,buf)) printf("Error creating first thread\n"); if(pthread_create(&writer,NULL,writetostdout,NULL)) printf("Error creating first thread\n"); while(exitvariable){ //sleep (1); } printf ("Exiting...\n");}