![]() |
1
2
当消费者在生产者获取条件锁并发出通知之前调用condition.wiat()时,就会出现问题。在这种情况下,消费者最终可能会无限期地等待,而从未收到任何信号。为了解决这个问题,消费者在保持条件锁的同时,不断检查循环中队列的状态非常重要。此外,消除了手动调用condition.nnotify_all()的需要,而是利用了队列的内置线程安全特性。队列可以简化同步过程。
|