【发布时间】:2014-08-03 14:03:41
【问题描述】:
每个应用程序域的静态构造函数是guaranteed to be run only once。
在创建第一个实例或引用任何静态成员之前自动调用它。
CLR 如何保证这一点?
假设有两个线程同时访问一个具有静态构造函数的类。
这两个线程都是第一次。
如下:
class SomeType
{
Static SomeType()
{
Console.Write("hello");
}
}
那么由于同时性,CLR如何保证控制台只写一次呢?用锁还是其他东西??
【问题讨论】:
标签: c# multithreading constructor static