最佳答案
在一个 c # 线程应用程序中,如果我要锁定一个对象,比方说一个队列,如果发生异常,对象会保持锁定状态吗?下面是伪代码:
int ii;
lock(MyQueue)
{
MyClass LclClass = (MyClass)MyQueue.Dequeue();
try
{
ii = int.parse(LclClass.SomeString);
}
catch
{
MessageBox.Show("Error parsing string");
}
}
据我所知,catch 之后的代码不会执行-但是我一直在想锁是否会被释放。