IDisposable 接口

  • 这取决于实现 IDisposable 的类的客户端,以确保他们在完成使用对象时调用 Dispose 方法。CLR 中没有任何内容可以直接在对象中搜索 Dispose 方法来调用。

  • 如果对象仅包含托管资源,则无需实现终结器。在实现自己的 Dispose 方法时,请务必在你的类使用的所有对象上调用 Dispose

  • 建议使该类安全地防止多次调用 Dispose,尽管理想情况下应该只调用一次。这可以通过在你的类中添加 private bool 变量并在 Dispose 方法运行时将值设置为 true 来实现。