110,546
社区成员
发帖
与我相关
我的任务
分享
public class Class1
{
static Class1()
{
Singleton = new Class1();
Console.WriteLine("static .ctor");
}
public static Class1 Singleton;
public void Show(double i)
{
Console.WriteLine("{1} - {0}", DateTime.Now, i);
}
public void Dispose()
{
Class1.Singleton = null;//很明显是错的
}
}
Class1.Singleton.Show(0.1);
Class1.Singleton.Dispose();
Class1.Singleton.Show(1);
static object lockObj = new object();
public void Show(double i)
{
lock(lockObj )
{
if(Class1.Singleton==null)
{//重新new
}
}
Console.WriteLine("{1} - {0}", DateTime.Now, i);
}