我想有以下阻塞條件變量有沒有下面的C++阻塞條件變量
- 一旦阻塞條件變量已經發出信號,所有的線程不會等待特定的條件變量
- 的條件變量可以隨時無信號。
- 一旦條件變量已經unsignaled,所有的線程將在可變
我看http://www.boost.org/doc/libs/1_34_0/doc/html/boost/condition.html
然而等待,這是行不通的(1)
好像有有沒有線程條件變量的等待中,notify_one
/notify_all
叫,會使信號丟失
1) thread TA try wait on condition variable C
2) thread TB call `notify_all`
3) thread TA will continue execution
1) thread TB call `notify_all`
2) thread TA wait on condition variable C
3) thread TA will still continue waiting <-- How can I have condition variable C remains in
signaled state, and make no wait for thread TA
你有沒有工作的問題的代碼? – Xorlev 2010-02-23 05:11:13