有一个铁笼子,猎人向笼子里放入老虎,只能一只;农民向笼子里放猪,可若干,不可放虎。饭店拿猪,每次一只;动物园取老虎,每次一只。(读者-写者、生产者-消费者同步问题)
Semaphore mutex=1,rmutex=1,wmutex=1,猪=0,虎=0;int pigcount=0;void 农户(){ while(1){ wait(rmutex); if(pigcount==0) wait(wmutex); pigcount++; signal(rmutex); wait(mutex); 放猪; signal(mutex); ...
原创
2021-11-24 21:00:41 ·
4020 阅读 ·
0 评论