C++线程安全的单例模式实现

来源:互联网 发布:感人 知乎 编辑:程序博客网 时间:2024/04/30 16:53
class Singleton{public:static Singleton* getInstance(){if (instance == NULL){//mutex.lock();if (instance == NULL){instance = new Singleton();}//mutex.unlock();}return instance;}private:static Singleton* instance;//Mutex mutex;};Singleton* Singleton::instance = NULL;


Mutex取绝于平台。。。
注意:两次instance == null的判断不可少。才能保证多线程安全,这种方法也叫Double-Check Locking(双重锁定)
0 0