当前位置:首页 > Windows程序 > 正文

C# 单例3种写法

2021-03-26 Windows程序

标签:

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; } } 第三种可能是C#这样的高级语言特有的,实在懒得出奇 public class Singleton { private Singleton(){} public static readonly Singleton instance = new Singleton(); } 哦,shit!

标签:

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/68014.html