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