单例模式:确保程序运行过程中某个类只能有一个实例,并且提供一个全局访问点。
单线程实现
//单线程实现
public sealed class Singleton
{
private static Singleton instance;
private Singleton() { }
public static Singleton Getinstance()
{
if (instance == null)
instance = new Singleton();
return instance;
}
}
多线程实现
//多线程实现
public sealed class Singleton2
{
private static Singleton2 insetance;
private static readonly object locker = new object();
private Singleton2() { }
public static Singleton2 GetSingleton2()
{
if (insetance==null)
{
lock (locker)
{
insetance = new Singleton2();
}
}
return insetance;
}
}