📜  门|门CS 2010 |第 45 题

📅  最后修改于: 2021-09-25 06:33:31             🧑  作者: Mango

下面的程序由3个并发进程和3个二进制信号量组成,信号量初始化为S0 = 1, S1 = 0, S2 = 0。

gatecs201042

进程 P0 会打印多少次“0”?
(A)至少两次
(B)正好两次
(C)正好三次
(D)恰好一次答案:(一)
解释:最初只有 P0 可以进入 while 循环,因为 S0 = 1、S1 = 0、S2 = 0。

最低数量按此顺序执行时,打印的时间 0 是两次 (p0 -> p1 -> p2 -> p0)

最大数量按此顺序执行时,打印的时间 0 是三次(p0 -> p1 -> p0 -> p2 -> p0)。

观看 GeeksforGeeks 视频说明:

这个问题的测验