簡體   English   中英

使用boost :: thread將c ++對象從一個線程傳遞到另一個線程的正確方法是什么?

[英]What is the proper way to pass a c++ object from one thread to another using boost::thread?

將C ++對象(地圖,矢量等)從一個線程傳遞到另一個線程的正確方法是什么? 我擔心競爭條件,陳舊價值等等。我正在使用提升線程。

提前致謝!

這完全取決於該對象“做什么”。 如果它是自包含的,即不保存對可能在原始線程中使用的其他對象的指針/引用 - 似乎沒有問題。 如果OTOH 確實包含對仍可能在原始線程中使用的某些數據的引用 - 其訪問應該是同步的。

當然,應該避免傳遞復雜的對象副值。

暫無
暫無

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

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