【发布时间】:2016-01-14 16:35:06
【问题描述】:
我知道 Meyers 单例:
class Singleton{
private:
Singleton();
public:
Singleton & GetInstance(){
static Singleton instance;
return instance;
}
}
它的优点是它使用惰性求值,但在 C++ 03 中不保证是线程安全的。
如果静态实例是成员变量怎么办?这保证是线程安全的吗?我不明白为什么不。此外,我愿意为此放弃惰性实例化。
class Singleton{
private:
Singleton();
static Singleton instance;
public:
Singleton & GetInstance(){
return instance;
}
}
【问题讨论】:
-
也许也可以看看这个答案:stackoverflow.com/questions/34744811/…
标签: c++ multithreading thread-safety singleton