void Consumer::run () { int i = 0, j; while(!theEnd) { char d = myBuffer->take(); consume(d); if (i++ == 40) { sleepSem.wait(92); i = 0; }else for(j=0;j<200;j++); } while (myBuffer->fullCount()){ for(j=0;j<200;j++); char d = myBuffer->take(); consume(d); } intLock cout<<endl<<"Happy End"; intUnlock }
void Consumer::run () { int i = 0, j; while(!theEnd) { char d = myBuffer->take(); consume(d); if (i++ == 40) { Thread::sleep(92); i = 0; }else for(j=0;j<200;j++); } while (myBuffer->fullCount()||Producer::num){ char d = myBuffer->take(); consume(d); dispatch(); } intLock cout<<endl<<"Happy End"<<endl; intUnlock }