为什么在生产者消费者问题中使用有界缓冲区时,为什么还必须使用互斥品?
empty:semaphore(n)
full: semaphore(0)
mutex: semaphore(1)
" Mutex"用于锁定缓冲区。
"完整"用于阻止消费者,如果缓冲区为空。
"空"用于阻止生产者,如果缓冲区已满。
这就是为什么您需要3个信号量。
您可以轻松地搜索代码,因此我不在此处粘贴它。