shared_ptr 线程安全?

Boost   文档对于   shared_ptr   的线程安全有一段专门的记述,内容如下:
shared_ptr   objects   offer   the   same   level   of   thread   safety   as   built-in   types.   A   shared_ptr   instance   can   be   "read "   (accessed   using   only   const   operations)   simultaneously   by   multiple   threads.   Different   shared_ptr   instances   can   be   "written   to "   (accessed   using   mutable   operations   such   as   operator=   or   reset)   simultaneosly   by   multiple   threads   (even   when   these   instances   are   copies,   and   share   the   same   reference   count   underneath.)
Any   other   simultaneous   accesses   result   in   undefined   behavior.
翻译为中文如下:
shared_ptr   对象提供与内建类型一样的线程安全级别。一个   shared_ptr   实例可以同时被多个线程“读”(仅使用不变操作进行访问)。不同的   shared_ptr   实例可以同时被多个线程“写入”(使用类似   operator=   或   reset   这样的可变操作进行访问)(即使这些实例是拷贝,而且共享下层的引用计数)。
任何其它的同时访问的结果会导致未定义行为。

你可能感兴趣的:(shared_ptr 线程安全?)