桌上有一空盘,只允许放入一个水果。爸爸专向盘中放苹果,妈妈专向盘中放橘子,女儿专等着吃盘中的苹果,儿子专等着吃盘中的橘子。试用P,V原语实现爸爸、妈妈、儿子和女儿间能同步的程序。
【正确答案】正确答案:在本题中,应设置3个信号量:empty,apple,orange。其中empty表示盘中是否为空,初始值为1;apple表示盘中是否有苹果,初始值为0;orange表示盘中是否有橘子,初始值为0。爸爸、妈妈、儿子和女儿间的同步描述如下: Father while(true) { P(empty); 将苹果放入盘中; V(apple); } Mather: while(true) { P(empty); 将橘子放入盘中;
【答案解析】