Design Pattern - Singleton
阿新 • • 發佈:2018-12-21
單例模式
定義:確保一個類只有一個例項,並提供一個全域性訪問點。
設計思路
- 私有化建構函式,使外界不能建立該類的例項
- 對外開放一個共有靜態方法,用於並返回全域性唯一例項。
示例程式碼(C#)
/// <summary> /// 單例模式的實現 /// </summary> public class Singleton { private static Singleton m_Singleton; private static readonly object locker = new object(); private Singleton() { } /// <summary> /// 返回該類全域性唯一例項 /// </summary> /// <returns></returns> public static Singleton GetInstance() { if (m_Singleton == null) { lock (locker) { if (m_Singleton == null) { m_Singleton = new Singleton(); } } } return m_Singleton; } }