多项选择题
在有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)两条语句可以颠倒顺序