出于好奇,我查看了lock
MSDN 上的关键字:
class Account
{
decimal balance;
private Object thisLock = new Object();
public void Withdraw(decimal amount)
{
lock (thisLock)
{
if (amount > balance)
{
throw new Exception("Insufficient funds");
}
balance -= amount;
}
}
}
在上面的示例中,对象thisLock
与lock
关键字一起使用。为什么需要这个?它似乎没有任何其他目的。为什么不单独拥有lock
关键字?