std::shared_ptr<T>的對象是否是線程安全的

在MSDN的描述爲:Multiple threads can simultaneously read and write different shared_ptr objects, even when the objects are copies that share ownership.

也就是說多個線程同時讀寫一個std::shared_ptr<>變量不安全。但多線程可以同時讀寫不同的std::shared_ptr<>變量,即使這些變量指向同一個對象。

所以如果希望在多個線程使用同一個對象的智能指針,可以讓每個線程使用這個指針的不同副本或者使用鎖保護這個指針。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章