C#单例模式的懒汉与饿汉


※ 单 例 模 式

    单例模式是指某一类在被调用时只能创建一个实例,即只能new一次;

※  饿 汉

    在每次调用的时候都先加载;

※  懒 汉

     调用的时候不加载,需要用到再加载;在多线程调用时不安全;

   (注意:在Nuity3D中不存在多线程,所以两种模式都可以用,相对来说,懒汉模式用的多一点)

   饿汉模式  C#代码

1  class HungerSingleton { 2         private static HungerSingleton _hungerSingleton=new HungerSingleton(); 3        
4         private HungerSingleton() { } 5         public static HungerSingleton GetInstance() { 6             Console.WriteLine("hunger"); 7             return _hungerSingleton; 8  } 9     }

 

   懒汉模式  C#代码

 1  class LazySingleton {  2         private static LazySingleton _LazySingleton;  3         private LazySingleton() { }  4         public static LazySingleton GetInstance() {  5             if (_LazySingleton==null)  6  {  7                 Console.WriteLine("lazy");  8                 _LazySingleton = new LazySingleton();  9  } 10             return _LazySingleton; 11  } 12     }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM