用进程通信的方法解决生产者/消费者问题。要求生产者能告诉消费者产品的说明、规格、价格等。而消费者能反馈对物品的评价和处理情况。

分类: 操作系统(02326) 发布时间: 2024-08-04 03:37 浏览量: 0
用进程通信的方法解决生产者/消费者问题。要求生产者能告诉消费者产品的说明、规格、价格等。而消费者能反馈对物品的评价和处理情况。
【正确答案】:设生产者/消费者进程要设立的公用信箱B,假设现在信箱中放一封初始信件,表示物品已取走。用进程通信管理生产者/消费者问题的程序如下; begin : process Producer : begin L1:produce a product; L2:receive(B,X) if{X中没有表示物品已取走}then go to L2; else begin (组织回信M) ∥M中含产品完成存放地点、产品说明、规格、价格等 send(B,M); end; goto L1; end; process Consumer : begin L3:receive(B,Y); if{Y中表示产品已完成}then begin {按信件中地址取出物品); {组织回信m); ∥回信中表示物品已取走,并反映对产品的评价和处理情况 send(B,m); goto L3 end; : end; end;