单例模式
作者:
易点梅 | 来源:发表于
2021-08-10 10:12 被阅读0次//双if + lock 实现线程安全的单例模式
class Singleton
{
private Singleton() { }
private static Singleton _singleton = null;
private static object _lock = new object();
public static Singleton CreateSingleton()
{
if(_singleton == null)
{
Console.WriteLine("路过。。");
lock(_lock)
{
if(_singleton == null)
{
Console.WriteLine("被创建。。");
_singleton = new Singleton();
Thread.Sleep(3000);
}
}
}
return _singleton;
}
}
//利用静态只读变量实现单例模式
class Singleton2
{
private Singleton2() { }
private static readonly Singleton2 _singleton2 = new Singleton2();
public static Singleton2 CreateSingleton2
{
get { return _singleton2; }
}
}
本文标题:单例模式
本文链接:https://www.haomeiwen.com/subject/mcsxbltx.html
网友评论