C# 为什么锁定(objLock)比锁定(this)更好
可能的重复项:C# 为什么锁定(objLock)比锁定(this)更好,c#,locking,C#,Locking,可能的重复项: 在C#中,通常使用lock(objLock),其中objLock是仅为锁定目的而创建的对象 为什么这个比锁(这个)好?锁定(这个)除了锁定类本身之外还有什么负面影响?因为其他东西可能会锁定实例,那么就会出现死锁 如果您锁定专门为此目的创建的对象,您就知道自己处于完全控制之中,其他任何东西都不会意外地锁定它。如果您锁定任何公共对象,则该类和其他一些类都可以尝试获得锁定。创建同步对象非常容易,而且总是首选对象 private syncLock = new Object(); 这
在C#中,通常使用lock(objLock),其中objLock是仅为锁定目的而创建的对象
为什么这个比锁(这个)好?锁定(这个)除了锁定类本身之外还有什么负面影响?因为其他东西可能会锁定实例,那么就会出现死锁
如果您锁定专门为此目的创建的对象,您就知道自己处于完全控制之中,其他任何东西都不会意外地锁定它。如果您锁定任何公共对象,则该类和其他一些类都可以尝试获得锁定。创建同步对象非常容易,而且总是首选对象
private syncLock = new Object();
这是一个功能,不是一个bug!另一个类希望以独占方式访问此实例的是什么?