标签:
让一个类只有一个对象,全局唯一
非多线程模式,实现方法:
方法1:
1 public class SingletonTest 2 { 3 public static readonly SingletonTest Instance = new SingletonTest(); 4 private SingletonTest() { } 5 }
方法2:
1 public class SingletonTest 2 { 3 public static readonly SingletonTest Instance; 4 static SingletonTest() 5 { 6 Instance = new SingletonTest(); 7 } 8 private SingletonTest() { } 9 }
多线程模式,实现方法:
1 public class SingletonTest 2 { 3 private static volatile SingletonTest instance = null; 4 private static object lockobj = new object(); 5 private SingletonTest() { } 6 public static SingletonTest Instance 7 { 8 get 9 { 10 if (instance == null) 11 { 12 lock (lockobj) 13 { 14 if (instance == null) 15 { 16 instance = new SingletonTest(); 17 } 18 } 19 } 20 return instance; 21 } 22 } 23 }
标签:
原文地址:http://www.cnblogs.com/dishiyicijinqiu/p/4617003.html