考虑以下对象有效的垃圾收集
class someObject;
{
public objectA A{get;set;}
public objectB B{get;set;}
public objectC C{get;set;}
public objectD D{get;set;}
//...
}
在某些时候,不再需要ObjectD
但someObject
实例仍然存在,并会为几个小时这样做,objectD
占用很多的内存,以便其作用后,完成后,我确实将它设置为null。
- 是否意味着存储将得到释放
ObjectD
只要 我将它设置为空? - 如果一个对象在某个范围内设置了这么久未使用,那么.NET对它做什么 ?
所以垃圾收集器收集时没有更多的引用?有没有办法让GC对某些对象不择手段? – FPGA
请注意,垃圾收集器的习惯实际上根据您选择的构建配置而有所不同。发布版本在修剪未使用的对象时更具侵略性 – Liath
@ user1492051您可以手动运行垃圾回收,但这是非常昂贵的操作,它会影响应用程序中的所有垃圾对象,而不仅仅是这一个 –