2009-01-27 69 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誘餌。 「隔離島」的主題以及如何運作的方法是有趣的主題。我建議在兩者上進行快速的谷歌搜索。