コード例 #1
0
        // 主要是因为该类不是公有,所以这个全部访问点也定义为私有的了
        // 但是思想还是用到了单例模式的思想的
        private static Singleton04 GetInstancePrivate()
        {
            if (_uniqueInstance != null)
            {
                return(_uniqueInstance);
            }

            Singleton04 singleton = new Singleton04();

            Interlocked.CompareExchange(ref _uniqueInstance, singleton, null);

            return(_uniqueInstance);
        }
コード例 #2
0
        /// <summary>
        /// 定义公有方法提供一个全局访问点,同时你也可以定义公有属性来提供全局访问点。
        /// </summary>
        /// <returns></returns>
        public static Singleton04 GetInstance()
        {
            Singleton04 singleton = GetInstancePrivate();

            return(singleton);
        }