void reader(void) { int ID; P(&mutex); ID = global_ID++; V(&mutex); while(1){ reader_entry(ID); printf ("[reader #%d]\t****READING****\n", ID); sleep(1); reader_exit(ID); }; }
void *reader() { int ID; sem_wait(&mutex); ID = global_ID++; sem_post(&mutex); while(1) { reader_entry(ID); printf("Reader %d Reading\n", ID); sleep(1); reader_exit(ID); } }
void reader() { readercount ++; while (1 > 0) { //printf("Reader[%p]: Start\n", runQ); reader_entry(); //printf("Reader[%p]: Entered\n", runQ); P(mutex); printf("Reader %d reading from writer : %d\n",readercount,runQ, shared_int); sleep(1); V(mutex); //printf("Reader[%p]: Exiting\n", runQ); reader_exit(); //printf("Reader[%p]: Exit\n", runQ); } }
void reader() { int local_id; //Locking and unlocking the critical section to modify the shared variable P(mutex); local_id=id++; V(mutex); while(1) { reader_entry(local_id); printf("\n Reader %d reading \n",local_id); sleep(1); reader_exit(local_id); } }