完成后,是否应将所有对象设置为null
(在VB.NET中为Nothing
)?
我明白这一点.NET处理实现IDisposable
接口的对象的任何实例以释放一些资源是至关重要的,尽管对象在被处理后仍然可以是某种东西(因此isDisposed
属性在表单中),所以我假设它仍然可以驻留在内存中,或者至少部分地驻留在内存中?
我还知道,当一个对象超出作用域时,它会被标记为要进行收集,为垃圾收集器的下一次运行做好准备(尽管这可能需要时间).
因此,考虑到这一点,将其设置为null
会加快系统释放内存的速度,因为它不必计算出它不再在范围内,它们是否有任何不良副作用?
MSDN文章从来没有在示例中这样做过,目前我做不到这一点