文章出處

namespace System
{
    /// <summary>
    /// 為指定的實例創建有線程安全的單例模式。實例必須有一個公開的,無參數的構造方法,并且能正確的被實例化。
    /// </summary>
    /// <typeparam name="T">作為單例的對象。</typeparam>
    public static class Singleton<T>
       where T : class
    {
        static volatile T _instance;
        static object _lock = new object();

        /// <summary>

        /// 為指定對象創建實例。

        /// </summary>

        public static T CreateInstance()
        {
            if (_instance == null)
            {
                lock (_lock)
                {
                    if (_instance == null)
                    {
                        _instance = Activator.CreateInstance<T>();
                    }
                }
            }
            return _instance;
        }
    }
}

  


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()