次の Lock ステートメントがあります。
private readonly object ownerLock_ = new object();
lock (ownerLock_)
{
}
ロック変数にvolatileキーワードを使用する必要がありますか?
private readonly volatile object ownerLock_ = new object();
MSDN では、通常、ロックせずにアクセスされるフィールドに使用されることがわかったので、Lock を使用する場合、volatile を使用する必要はありませんか?
MSDNから:
volatile 修飾子は通常、lock ステートメントを使用してアクセスをシリアル化せずに、複数のスレッドによってアクセスされるフィールドに使用されます。