JVM是否能夠找到大型循環引用並收集對象?是否有任何官方文件/鏈接說明相同?或者您是否有垃圾收集大型循環引用的任何好的/不好的經驗。大型循環引用和JVM垃圾收集器
更新鏈接:http://java.sun.com/docs/books/performance/1st_edition/html/JPAppGC.fm.html#997442
JVM是否能夠找到大型循環引用並收集對象?是否有任何官方文件/鏈接說明相同?或者您是否有垃圾收集大型循環引用的任何好的/不好的經驗。大型循環引用和JVM垃圾收集器
更新鏈接:http://java.sun.com/docs/books/performance/1st_edition/html/JPAppGC.fm.html#997442
從簡單的角度來看,JVM使用了一種Tracing Garbage Collection Mark-and-Sweep。循環引用不會干擾這種算法的正確行爲,因爲它從「基本」級開始,並通過引用找到可從那裏訪問的元素。任何無法到達的地方都可以收集/釋放。
值得注意的是,JVM垃圾收集器通常比這更復雜,通過許多優化使事情變得更快。這就是說,標記和掃描算法的一般屬性適用於它。
是。 JVM的垃圾收集器可以處理循環引用。
JVM使用的垃圾收集器不是引用計數垃圾收集器。相反,它通過從仍然可訪問的引用進行跟蹤(所有線程的堆棧或靜態引用中的引用)來查找垃圾。
是的。你需要什麼樣的文件? – alf 2012-02-17 13:48:34