单例模式的三种写法
Posted 1936xinyang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单例模式的三种写法相关的知识,希望对你有一定的参考价值。
第一种,懒汉模式,没考虑线程安全
public class Singleton { private static Singleton _instance = null; private Singleton(){} public static Singleton CreateInstance() { if(_instance == null) { _instance = new Singleton(); } return _instance; } }
第二种,经典模式
public class Singleton { private volatile static Singleton _instance = null; private static readonly object lockHelper = new object(); private Singleton(){} public static Singleton CreateInstance() { if(_instance == null) { lock(lockHelper) { if(_instance == null) _instance = new Singleton(); } } return _instance; } }
第三种,饿汉模式
public class Singleton { private Singleton(){} public static readonly Singleton instance = new Singleton(); }
以上是关于单例模式的三种写法的主要内容,如果未能解决你的问题,请参考以下文章