问题 单项选择题

一种哲学家就餐问题的解决方案如下所述:
Philosopher i:
do
wait(chopstick[i]);
wait(chopstick[(i+1)%5])
......
eat
......
signal(chopstick[i]);
signal(chopstick[(i+1)%5]);
......
think
while(1);
上述方法,说法正确的是______。

A.此算法保证每个哲学家都能互斥地使用筷子且不会处于死锁
B.此算法保证每个哲学家都能互斥地使用筷子但是会出现死锁
C.此算法不能保证哲学家互斥地使用筷子且不会处于死锁
D.此算法不能保证哲学家互斥地使用筷子并且系统会死锁

答案

参考答案:B

解析: 假设每个哲学家变得饥饿,同时拿起左边筷子,而右边的筷子为空,这样永远拿不到右边的筷子,处于死锁的状态。

单项选择题 A1/A2型题
单项选择题