我有以下代码。这可能是个愚蠢的问题,但我不确定是否需要同步。
class MyClass
{
[ThreadStatic]
private static object _staticObject;
private static readonly LockStaticField = new object();
public static object StaticObject
{
get
{
lock(LockStaticField)
{
return _staticObject ?? (_staticObject = new object());
}
}
}
}
我知道ThreadStatic
字段不需要任何同步,因为状态不是共享的。但是静态 getter 和初始化呢?