垃圾收集器如何在C#中释放内存

尚穆哈拉杰

代码看起来像这样。

public class clsMisc : IDisposable {
  List<clsEmployee> lst = new List<clsEmployee>();

  void Add(){
     lst.Add(obj);
     //Adding to it list here
  }

  public void Dispose()
  {
    lst = null;
  }

}

上面的类这样称呼,

Using( clsMisc obj = new clsMisc()){
 //Here goes the code
}

一旦它脱离了使用范围,就会调用clsMisc中的dispose方法,并在其中分配了null。

是否将释放存储在内存中的值(列表中clsEmployee的现有记录)并分配新值,或者将创建List的新实例并分配空值?

因为我很新,所以我无法理解行为。

有人可以在这方面指导我吗?

大卫·皮尔金顿(David Pilkington)

您完全不必担心它,因为收集器相当聪明,并且由于它是一种托管语言,因此您应该放任不管。

收集器将决定何时需要进行清理,因此无法保证何时进行工作。

但是,如果您对强制执行收集不满意,可以致电 GC.Collect

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从Node.js中的垃圾收集器“释放”内存缓冲区?

如果我将null分配给对象或属性,C#中的垃圾收集器是否将始终运行并释放其内存空间?

使用R包装器时,R垃圾收集器是否释放C中分配的内存?

Golang垃圾收集器在1.5+中的改进会影响释放的内存量吗?

垃圾收集器Java应用程序无法释放POD Kubernetes中的内存

为什么Net Core 2.0中的垃圾收集器不释放所有内存

C#中的垃圾收集器何时退出

C#垃圾收集器会释放这些对象吗?

Kotlin / Native垃圾收集器如何在C中工作?

垃圾收集器未释放Android应用程序中应释放的“垃圾存储”

PHP内存限制垃圾收集器

垃圾收集器如何检测垃圾?

垃圾收集器无法释放导致完全GC的JBoss 7.1.1上的内存

C#垃圾收集器如何查找仅引用内部指针的对象?

如何在远程jmx URL的java中获取所有垃圾收集器MX bean?

我如何查看垃圾收集器中的内容

垃圾收集器如何继续跟踪堆栈中的根

C垃圾收集器中的段错误

如何在不耗尽垃圾收集器的情况下将非常大的元素保留在内存中?

垃圾收集器尝试收集共享内存对象

如何禁用Perl的垃圾收集器?

如何禁用Java垃圾收集器?

垃圾收集器如何识别根

如何控制垃圾收集器?

如何强制垃圾收集器运行?

什么是Java中的垃圾收集器?

Android中的垃圾收集器

托管C ++的垃圾收集器

垃圾收集器与收集