【发布时间】:2018-09-21 02:36:31
【问题描述】:
为什么不在 C# 中创建删除对象的可能性,就像在 C++ 中一样,作为替代但不是必需的操作?
例如,当我们想从 500 Mb 对象中清理内存时,不再需要等待 GC(垃圾收集器)
【问题讨论】:
-
GC.Collect();GC.Collect();叫它两次。但问题是你为什么在乎?
-
如果这 500 Mb 来自非托管资源,请检查您的
IDisposable对象,否则检查元素的范围(静态 vs 类 vs 方法)是否正确,并且不再分配给 null 元素在该范围内使用。 -
像.NET 这样的托管 语言的重点在于,有一个 垃圾收集器可以删除所有孤立对象。所以你不必关心这个 mch,除非你有一些 GC 根本无法处理的 unmanaged 资源。
-
这个时候你需要看看Garbage Collection
标签: c# garbage-collection