首页 > 试题广场 >

下列伪代码是一个有界缓冲区的生产值/消费者问题的正确解法:

[问答题]
下列伪代码是一个有界缓冲区的生产值/消费者问题的正确解法:

标号 p1, p2, p3 和 c2, c2, c3 代表它们之后的代码行( p2 和 c2 代表它们之后的 3 行代码)。信号量 empty 和 full 是能够取任意正、负、零值的线性信号量。现有多个生产者,以 Pa, Pb, Pc 等代表;有多个消费者,以 Ca, Cb,Cc 等代表。每个信号最维护一个阻塞在其上的进程的 FIF O队列。
在如下的调度表中,每行代表调度的指令执行后缓冲区和信号量的状态。为简单起见,假设调度能使程序在执行指定部分的代码 p1, p3,…,c3时不会被打断。请完成这个调度表。

这道题你会答吗?花几分钟告诉大家答案吧!