相关疑难解决方法(0)

如果锁定的对象内部发生异常,它是否会保持锁定状态?

在ac#threading应用程序中,如果我要锁定一个对象,让我们说一个队列,如果发生异常,该对象是否会保持锁定状态?这是伪代码:

int ii;
lock(MyQueue)
{
   MyClass LclClass = (MyClass)MyQueue.Dequeue();
   try
   {
      ii = int.parse(LclClass.SomeString);
   }
   catch
   {
     MessageBox.Show("Error parsing string");
   }
}
Run Code Online (Sandbox Code Playgroud)

据我所知,catch之后的代码没有执行 - 但我一直想知道锁是否会被释放.

.net c# multithreading locking exception

77
推荐指数
6
解决办法
4万
查看次数

标签 统计

.net ×1

c# ×1

exception ×1

locking ×1

multithreading ×1