std::shared_ptr的对象是否是线程安全的

在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<>变量,即使这些变量指向同一个对象。

所以如果希望在多个线程使用同一个对象的智能指针,可以让每个线程使用这个指针的不同副本或者使用锁保护这个指针。

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