相关疑难解决方法(0)

C#中的重入锁定

以下代码是否会在.NET上使用C#导致死锁?

 class MyClass
 {
    private object lockObj = new object();

    public void Foo()
    {
        lock(lockObj)
        { 
             Bar();
        }
    }

    public void Bar()
    {
        lock(lockObj)
        { 
          // Do something 
        }
    }       
 }
Run Code Online (Sandbox Code Playgroud)

.net c# multithreading deadlock locking

116
推荐指数
4
解决办法
3万
查看次数

C#中的嵌套锁定

我正在学习C#中的多线程,我在下面看到了一个代码

static readonly object _locker = new object();

static void Main()
{
  lock (_locker)
  {
     AnotherMethod();
     // ...some work is going on
  }
}

static void AnotherMethod()
{
  lock (_locker) { Console.WriteLine ("Another method"); }
}
Run Code Online (Sandbox Code Playgroud)

我想知道什么时候需要使用嵌套锁定?在这种情况下为什么不只使用一个锁?

c# multithreading

6
推荐指数
1
解决办法
643
查看次数

标签 统计

c# ×2

multithreading ×2

.net ×1

deadlock ×1

locking ×1