Singleton 单件模式
保证一个类只有一个实例,并提供一个该实例的全局访问点。
核心是如何控制用户使用new对一个类的实力构造器的任意调用。
1、单线程Singleton模式实现
public class Singleton
{
//private static Singleton instance = new Singleton(); //不进行延时加载
private static Singleton instance;
private Singleton() { } //构造器
public static Singleton Instance
{
get
{
if (instance == null)
{
instance = new Singleton();
}
return instance;
}
}
}
public class Test
{
public static void Main()
{
Singleton t1 = Singleton.Instance;
Singleton t2 = Singleton.Instance;
Console.WriteLine(Object.ReferenceEquals(t1, t2) == true);
}
}