This boost example on condition variables表明在調用cond.notify_one()
期間互斥鎖不必保持。這是否暗示boost::condition_variable
是線程安全的?即如果「準備數據」線程釋放互斥並嘗試呼叫cond.notify_one()
,而另一線程現在獲取釋放的互斥並同時嘗試呼叫cond.wait(...)
,會發生什麼?boost :: condition_variable線程安全嗎?
1
A
回答
2
該示例並不意味着boost::condition_variable
是線程安全的。然而,wait
,wait_for
,wait_until
,notify_one
和 notify_all
是線程安全的成員函數。
Boost.Thread記錄它的conformance and extension of the C++11 standard Thread library。它列出了條件變量,類別condition_variable
和類別condition_variable_any
符合要求。
標準(第30.5-2)的相關部分規定:
條件變量允許的
wait
,wait_for
,wait_until
,notify_one
和notify_all
成員函數併發調用。
相關問題
- 1. std :: condition_variable是線程安全的嗎?
- 2. 線程同步與boost :: condition_variable
- 3. boost :: asio :: deadline_timer線程安全嗎?
- 4. 是boost :: detail :: atomic_count線程安全嗎?
- 5. 是boost :: interprocess線程安全嗎?
- 6. Boost圖:add_edge和remove_edge線程安全嗎?
- 7. Boost BGL線程安全
- 8. java線程安全:線程安全嗎?
- 9. cocos2d isTouchEnabled線程安全嗎?
- 10. 是winsock2線程安全嗎?
- 11. 在Boost中的線程安全msm
- 12. 線程安全擔保的boost ::侵入
- 13. boost smart_ptr非線程安全宏,它真的存在嗎?
- 14. Spring mongoTemplate線程安全嗎?
- 15. Lparallel.queue線程安全嗎?
- 16. BoxClient線程安全嗎?
- 17. EventHubClient.SendBatchAsync - 線程安全嗎?
- 18. .NET:JsonMediaTypeFormatter線程安全嗎?
- 19. multiset equal_range線程安全嗎?
- 20. pip線程安全嗎?
- 21. com.google.cloud.datastore.Datastore線程安全嗎?
- 22. WNetGetResourceInformation線程安全嗎?
- 23. qsort線程安全嗎?
- 24. work_queue線程安全嗎?
- 25. .NET DateTime線程安全嗎
- 26. DynamoDBContext線程安全嗎?
- 27. 在Python線程安全嗎?
- 28. java.lang.reflect.Method線程安全嗎?
- 29. HttpContext.Current.Cache線程安全嗎?
- 30. UIFont線程安全嗎?