如果 .NET 有垃圾回收功能,那么为什么你必须显式调用 IDisposable
?
最佳答案
垃圾回收是为了内存。您需要处理非内存资源 - 文件句柄、套接字、GDI+ 句柄、数据库连接等。这通常是 IDisposable
类型的基础,尽管实际句柄可能在链中很长一段路要走的引用资料。例如,您可以Dispose
一个XmlWriter
,它处理一个它引用的StreamWriter
,它处理FileStream
它 有一个引用,释放文件句柄本身。
关于c# - IDisposable 有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/615105/