题目内容:
在有N个缓冲区的生产者消费者的问题中,下列叙述中哪些是错误的?producer(){ int item;
while(TRUE) {
item = produce_item();
P(empty);
P(mutex);
insert_item(item);
V(mutex)
V(full);
}
}
consumer()
{ int item;
while(TRUE) {
P(full);
P(mutex);
item = remove_item();
V(mutex);
V(mutex);
consume_item(item);
}
} A.信号量empty的初值为N
B.信号量full的初值为0
C.信号量mutex的初值为0
D.P(full)和P(mutex)两条语句可以颠倒顺序
E.V(mutex)和V(mutex)两条语句可以颠倒顺序
参考答案:【答案仅供学习,请勿对照自行用药等】
答案解析: