在解决多个生产者和多个消费者共享容量大于l的缓冲器问题中,为什么既要同步又要互斥?
(1)生产者和消费者之间只有互通消息后才能知道缓冲区中是否可以存物品或取物品,故需同步。(2分)
(2)存物品的指针是多个生产者共享的,只有互斥使用该指针才能避免把不同物品存入同一位置。(1分)
(3)同样,取物品的指针是多个消费者共享的,也只有互斥使用该指针才能避免从同-位置重复取物品。
在解决多个生产者和多个消费者共享容量大于l的缓冲器问题中,为什么既要同步又要互斥?
(1)生产者和消费者之间只有互通消息后才能知道缓冲区中是否可以存物品或取物品,故需同步。(2分)
(2)存物品的指针是多个生产者共享的,只有互斥使用该指针才能避免把不同物品存入同一位置。(1分)
(3)同样,取物品的指针是多个消费者共享的,也只有互斥使用该指针才能避免从同-位置重复取物品。