1

我对关闭、处置、完成、GC、Idisposable 完全感到困惑。哦,你能把它们的详细描述发给我吗?

4

1 回答 1

5

这是一个相当大的话题。我可以推荐一下Richter的CLR书籍吗?它详细介绍了您提到的所有问题。

一个非常简短的翻译:

  • 在一次性类型上,Close 通常与 Dispose 相同。
  • Dispose 用于允许对未由垃圾收集处理的资源进行确定性清理。
  • 终结器(或 C# 语言规范所称的析构函数)是垃圾收集代码在某个时间点调用的清理方法。即,与 C++ 的析构函数不同,这不是在明确定义的时间点完成的。
  • GC 是垃圾收集的缩写,指的是 .NET 对托管堆上的对象的自动清理。
  • IDisposable 是一个接口,它表明所讨论的类型实现了上述的 Dispose 方法。

更多细节请查阅本书。Joe Duffy 的这篇相当详尽的博客文章对于理解 IDisposable 和终结器也非常有用。

于 2009-07-29T09:06:48.813 回答