簡體   English   中英

C ++ Atomic / Mutex如何遵循?

[英]C++ Atomic/Mutex What way to follow?

我想知道什么是更好的選擇:假設有一個普通的可復制對象,比方說隊列數據結構,該結構被多個線程用來彈出/推送數據。 該對象僅提供put / push方法,不能同時由多個線程訪問。 顯然,如果調用put,則不能調用push。

您是否建議將模型包裝為原子類型(如果可能),或者使用互斥體?

問候!

在這種情況下,原子是優選的。 原子是CPU專門支持的一種操作,而其他類型的線程控制則傾向於由OS或其他措施來實現,並且會產生更多開銷。

編輯:快速搜索顯示這具有更多的信息,基本上是相同的問題: 哪個更有效,基本互斥鎖或原子整數?

編輯2:和更詳細的文章在這里http://www.informit.com/articles/article.aspx?p=1832575

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM