问题 单项选择题

“生产者—消费者”问题是一个经典的进程同步与互斥控制问题,若缓冲区可存放n件物品,要解决这个问题,通常需要使用()个信号量。

A.1

B.2

C.3

D.4

答案

参考答案:C

解析:

设有一个生产者、一个缓冲区和一个消费者,缓冲区可存放n件物品。生产者不断地生产产品,消费者不断地消费产品。如何用PV操作实现生产者和消费者的同步。可以设置3个信号量S、S1和S2,其中,S是一个互斥信号量且初值为1,因为缓冲区是一个互斥资源,所以需要进行互斥控制;S1表示是否可以将物品放入缓冲区,初值为n;S2表示缓冲区是否存有物品,初值为0。

多项选择题 共用题干题
填空题