判斷一個對象是否會被垃圾回收器回收

在閱讀《深入理解java虛擬機》之前,就曾看過JVM通過引用計數算法來判斷一個對象的存活狀態這種結論,事實上並非如此,此書作者也用實例證明此結論的錯誤。引用計數算法意思是當一個對象被另一個地方引用時,計數器的值+1,引用失效後,值-1。實例中使用兩個對象相互引用,可還是被回收了。 真正的判斷方法應該是可達性分析算法,即通過一系列的稱爲"引用鏈"來判斷存貨狀態,引用鏈的最頂級爲「GC Roots」,
相關文章
相關標籤/搜索