在 IDiposable 类的 Dispose 方法中取消注册外部事件是一个好习惯吗?

2023-12-26

我阅读了优秀的答案,解释了如何使用 Dispose 模式,以及为什么它会以这种方式工作。

正确使用 IDisposable 接口 https://stackoverflow.com/questions/538060/proper-use-of-the-idisposable-interface

该帖子明确指出您希望在两种不同的场景中使用 Dispose 模式:

  1. 摆脱非托管资源(因为我们必须这样做)
  2. 摆脱托管资源(因为我们想提供帮助)

我的问题是:

  • 当一个对象在其整个生命周期中订阅外部事件时,在 Dispose 方法中取消注册该事件是否也是常见/良好的做法?您会为此目的实现 IDisposable 接口吗?

是的你应该。

这是向您的类的使用者表明它具有必须释放的“资源”的最佳方式。 (尽管事件订阅在技术上不是资源)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 IDiposable 类的 Dispose 方法中取消注册外部事件是一个好习惯吗? 的相关文章

随机推荐