桌上有一盘子,每次只能放入2个不同水果。Father专向盘里放Apple,Mother专向盘里放Orange,一个Son专吃盘中的half Orange and half Apple,一个Daughter专吃盘中的另外half Apple and half Orange。 仅当盘没有放2个水果时,Father or Mother才可向盘里放一个水果,而且不允许放2个相同的水果。 仅当盘中有自己需要的half Apple and half Orange时,Son or Daughter才可从盘里取出,而且Father,Mother放入一次后,Son,Daughter必须各自取一次。 把Father、Mother、Son、Daughter看作4个进程,用Wait(),Signal()原语进行管理,使这4个进程能正确地并发执行。