【发布时间】:2024-01-18 02:47:01
【问题描述】:
这是一个代码示例:
class A {
boost::mutex a_mutex;
boost::shared_ptr<int> a;
boost::shared_ptr<int> clone_a(void) {
boost::lock_guard<boost::mutex> lock(a_mutex);
return a;
}
};
建议是 A::a 上的 boost::shared_ptr 复制构造函数调用将在 boost::lock_guard 析构函数调用之前,尽管编译器进行了优化。
那么,拨打A::clone_a() 安全吗?
【问题讨论】:
-
你能解释一下为什么你担心它可能不好吗?
标签: c++ gcc shared-ptr