2017青海公务员职位表:有关进程同步的程序:吃苹果问题

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/03 04:07:50
题目:
父亲、儿子、女儿三个人和一个盘子,当盘子空时,父亲往盘中随机放苹果或香蕉,儿子只从盘中拿苹果,女儿只从盘中拿香蕉。
请用P,V原语来实现线程同步于互斥。
哪位高手能赐教下,小弟将感激涕零……

begin
s:semaphore;
s:=1;
cobegin
process A
begin
L1: P(s);
放香蕉或苹果;
V(s);
goto L1;
end;
process B
begin
L2:P(s);
拿苹果;
V(s);
goto L2;
end;
process C
begin
L3: P(s);
拿香蕉;
V(s);
goto L3;
end;
coend;
end;

你加点悬赏分,我帮你搞掂。