相关疑难解决方法(0)

为什么锁(这个){...}不好?

在MSDN文档说,

public class SomeObject
{
  public void SomeOperation()
  {
    lock(this)
    {
      //Access instance variables
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

如果可以公开访问实例,那就是"一个问题".我想知道为什么?是因为锁定的持有时间超过了必要的时间吗?还是有一些更阴险的原因?

c# multithreading locking

462
推荐指数
6
解决办法
15万
查看次数

锁(this)和静态对象上的锁之间的区别

以下哪两个代码段更适合使用?

static readonly object _locker = new object();
lock (_locker)
Run Code Online (Sandbox Code Playgroud)

要么

lock (this)
Run Code Online (Sandbox Code Playgroud)

this是当前实例的对象.那么为什么lock (_locker)总是在书中呢?

相关:
lock(this)和lock(thisLock)有什么区别?
为什么锁(这个){...}不好?

.net c# multithreading locking thread-safety

11
推荐指数
2
解决办法
1万
查看次数

标签 统计

c# ×2

locking ×2

multithreading ×2

.net ×1

thread-safety ×1