Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
有很多帖子、投票和答案表明使用lock (this)不是推荐模式(更不用说糟糕的模式了)。
lock (this)
例如,看看这个。
当我试图调查这种模式时,并想问是否有人能想到lock (this)实际推荐使用甚至必须使用的场景?
经验法则:永远不要锁定它,而是创建一个单独的(私有)对象来锁定。
但是......问题更深:锁定是有目的的,通过锁定您可以保护上层对象,但它不会阻止更新例如集合中的底层对象。
在大多数情况下,不需要锁。阅读这个主题是我的建议。
SO上的多个问题涵盖了您的问题。不应该很难就不锁定这一点的动机建立意见。
可以在 Phil Haack 的博客上找到进一步阅读的示例和提示
锁定这个是邪恶的。这意味着有人可能决定锁定您的实例。这意味着您的实例将等到其他人释放它。