为什么我们需要private obj
?还是任何一种物体?锁参数的目的是什么?
private static object obj = new object();
static void Print() {
lock (obj)
{
Console.WriteLine("Start");
Thread.Sleep(100);
Console.WriteLine("End");
}
}
如何使用此代码?
答案 0 :(得分:2)
为什么我们需要
private obj
?
它实际上不必是私有的,代码也可以与公共对象一样工作。你可以锁定任何物体。
但最佳做法是尽可能隐藏锁定对象,并且只允许实际需要它的代码访问它。这有助于防止死锁。