C#在锁语句中引发异常
示例
以下代码将解除锁定。不会有问题的。幕后锁语句的作用是tryfinally
lock(locker)
{
throw new Exception();
}在C#5.0规范中可以看到更多信息:
lock形式的声明
lock (x) ...
wherex是引用类型的表达式,恰好等于
bool __lockWasTaken = false;
try {
System.Threading.Monitor.Enter(x, ref __lockWasTaken);
...
}
finally {
if (__lockWasTaken) System.Threading.Monitor.Exit(x);
}除了那只x被评估一次。
热门推荐
10 小红书平安祝福语简短
11 生日祝福语大全女孩简短
12 收生日红包祝福语 简短
13 领证幽默祝福语简短
14 法考面试祝福语简短
15 老哥出门祝福语简短语
16 送灯祝福语简短独特
17 幼儿狗年祝福语大全简短
18 好听的元旦简短祝福语