换句话说,这个Singleton实现线程是否安全:
public class Singleton
{
private static Singleton instance;
private Singleton() { }
static Singleton()
{
instance = new Singleton();
}
public static Singleton Instance
{
get { return instance; }
}
}
Run Code Online (Sandbox Code Playgroud) 首先,我得到了一个答案:静态构造函数的用途是什么?,但我想在这方面得到答案.
这是我的C#静态类:
public static class BasicClass
{
static int i = 0;
static BasicClass()
{
i = 10;
}
public static void Temp()
{
//some code
}
public static void Temp1()
{
//some code
}
}
Run Code Online (Sandbox Code Playgroud)
在这里我有一个静态变量i,在第一次调用时初始化为10.所以基本上它可能是静态构造函数的目的,但是如果不通过初始化声明静态构造函数来实现同样的事情,那么static int i = 10
它只能被初始化一次.
那为什么我们需要一个静态构造函数呢?或者我在理解静态构造函数的概念或使用方面完全错误了吗?
面对生成一个异常实例然后可能多次抛出该异常的代码。
private readonly Exception exceptionInstance = new Exception("message");
Run Code Online (Sandbox Code Playgroud)
多次抛出相同的异常实例是否正确?