線程安全的單例模式

單例模式定義:

保證一個類僅有一個實例,並提供一個它的全局訪問點。例如操作系統只能有一個窗口管理器,數據庫只能存在一個實例等。

單例模式實現的三個要點:

(1)有一個私有的靜態指針變量指向類的唯一實例。

(2)私有的構造方法

(3)公有的靜態的獲取實例的方法。

具體實現:

 

class Singleton

{

private:

         static Singleton *instance;

         Singleton();

public:

         static Singleton *getInstance()

{

                  if(instance==NULL)

                           instance=new Singleton();

                  return instance;

         }

}

 

如何保證線程安全

即保證線程同步和互斥訪問的方法:

臨界區,信號量,加鎖等。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章