我有以下 Lock 语句:
private readonly object ownerLock_ = new object();
lock (ownerLock_)
{
}
我应该为我的锁变量使用volatile关键字吗?
private readonly volatile object ownerLock_ = new object();
在 MSDN 上,我看到它通常用于无需锁定即可访问的字段,所以如果我使用 Lock 我不需要使用 volatile?
来自MSDN:
volatile修饰符通常用于被多个线程访问而不使用lock语句序列化访问的字段。