| by msbeta | No comments

C++多线程编程-智能指针shared_ptr

1、shared_ptr的引用计数是线程安全的么?

shared_ptr的引用计数是线程安全的。

2、shared_ptr对象是线程安全的么?

shared_ptr对象不是线程安全的。如果多个线程读写同一个shared_ptr对象,需要加锁。注意,这里说的shared_ptr对象本[……]

继续阅读

Read More
| by msbeta | No comments

C++11-shared_ptr使用的两个坑

1、禁止使用一个裸指针创建多个智能指针

先看下如下的代码,会有什么样的问题呢?没错,ptr_1和ptr_2均使用裸指针(raw pointer),指向同一块内存,但它们彼此不相知。

当ptr_2作用域结束时,它会delete关联的裸指针(raw pointer),然后ptr_1的指针[……]

继续阅读

Read More