单例模式

    /// <summary>
    /// 懒汉式
    /// </summary>
    public class SingletonObjectLH
    {
        private SingletonObjectLH() { 
        }
        private static readonly object lock_obj=new object();
        private static SingletonObjectLH? singletonObject;
        public static SingletonObjectLH CreateSingletion()
        {
            if (singletonObject == null)
            {
                lock (lock_obj)
                {
                    if (singletonObject == null)
                        singletonObject = new SingletonObjectLH();
                }
            }
            return singletonObject;
        }
    }
        
懒汉式
    /// <summary>
    /// 饿汉式
    /// </summary>
    public sealed class SingletonObjectEH
    {
        private static readonly SingletonObjectEH singletonObject = new SingletonObjectEH();
        private SingletonObjectEH() { }
        public static SingletonObjectEH CreateSingletion()
        {
           return singletonObject;
        }
    }
饿汉式

 

posted @ 2024-04-01 15:03  DaiWK  阅读(1)  评论(0编辑  收藏  举报