Singleton模式中的DoubleCheck机制
在多线程环境下,使用Singleton模式很重要的一点就是要保证用Double Check机制保证线程安全。
很多时候, 我们通常需要使用singleton模式来保证对象实例的唯一性。通常我们是这么写的:
class Singleton
{
private:
static Singleton *instance;
public:
static Singleton* getInstance();
private:
Singleton();//将构造函数设为Private以保证只能通过getInstance获取对象实例.