2009-01-27 39 views
1

有人可以请我解释垃圾回收是如何工作的? (我正在使用C#和Java)。垃圾回收操作

+0

-1这是一个模糊的问题。 – 2009-01-27 15:09:36

回答

6

垃圾收集背后的基本思想是你不必关心内存管理。 Garbage Collectod做的是定期检查对象引用,找到不再使用(不再引用)的对象来回收它们的内存并压缩另一个。 垃圾收集器使用各种算法来执行他们的工作,并且他们对于从一种语言到另一种语言的某些细节有所不同。 维基百科给你一个很好的starting point。 如果您正在寻找更多有关各种垃圾收集器(Java,.NET,..)的实际实施的深入信息,您可以检查herehere或在谷歌搜索了解更多信息。

1

性能监视器提供了许多计数器GC相关的性能...

0

我想你需要知道的是,垃圾收集器是在你的程序释放由它的引用使他们的对象所占用的内存运行的线程不可达。你还需要知道,在诠释GC运行无法预测的时刻,你可以拨打电话到System.gc()提提意见为GC运行,但使其运行, JVM会采取这一决定。

如果您有: Object objectReference = null;

由objectReference引用的对象是GC诱饵。 “隔离岛”的主题以及如何运作的方法是有趣的主题。我建议在两者上进行快速的谷歌搜索。