使用锁(这个)的一个很好的理由
本文关键字:一个 很好 理由 这个 | 更新日期: 2023-09-27 18:36:23
有许多帖子,投票和答案表明使用lock (this)
不是推荐模式(更不用说糟糕的模式了)。
例如,看看这个。
当我试图稍微研究这种模式时,并想问是否有人能想到实际上建议使用lock (this)
甚至必须使用的情况?
锁定 THIS 是邪恶的。这意味着有人可能会决定锁定您的实例。这意味着您的实例将等到其他人释放它。
经验法则:永远不要锁定它,而创建一个单独的(私有)对象来锁定。
但。。。问题更深:锁定是有目的的,通过锁定,您可以为上层对象提供保护,但它不会阻止更新例如集合中的基础对象。
在大多数情况下,不需要锁。阅读这个主题是我的建议。
SO上的多个问题涵盖了您的问题。应该不难建立关于不锁定这一点的动机的意见。
进一步阅读的示例和指针可以在Phil Haack的博客上找到