有一只铁笼子,每次只能放入一只动物,猎手只能向笼中放入老虎,农民只能向笼中放入猪,动物园等待取笼中的老虎,饭店等待取笼中的猪,试用P、V操作写出能同步执行的程序。

admin2016-12-23  22

问题 有一只铁笼子,每次只能放入一只动物,猎手只能向笼中放入老虎,农民只能向笼中放入猪,动物园等待取笼中的老虎,饭店等待取笼中的猪,试用P、V操作写出能同步执行的程序。

选项

答案题中存在着猎人和农民互斥使用铁笼,猎人和动物园与农民和饭店之间的协同工作,以及猎人和农民都要申请铁笼资源并互斥访问,猎人与动物园、农民与饭店间的同步操作。 TyPedef int S,s1,s2;//S定义铁笼资源,s1表示可取的老虎,s2表示可取的猪 S=1.s1=s2=0; Void P_hunter() { P(S); 放入老虎; V(s1); } Void P_zoom() { P(s1); 取出老虎; V(S); } Void P_farner() { P(S); 放入猪; V(s2); } Void P_restaurant() { P(s2); 取出猪; V(S); }

解析
转载请注明原文地址:https://kaotiyun.com/show/wfjx777K
0

最新回复(0)