java垃圾回收有哪些演算法

duanhao發表於2021-09-11

java垃圾回收有哪些演算法

1、標記清除演算法

標記-清除演算法分為兩個階段:標記階段和清除階段。標記階段的任務是標記出所有需要被回收的物件,清除階段就是回收被標記的物件所佔用的空間。

2、複製演算法

複製演算法將可用記憶體按容量劃分為大小相等的兩塊,每次只使用其中的一塊。當這一塊的記憶體用完了,就將還存活著的物件複製到另外一塊上面,然後再把已使用的記憶體空間一次清理掉,這樣一來就不容易出現記憶體碎片的問題。

3、標記整理演算法

該演算法標記階段和Mark-Sweep一樣,但是在完成標記之後,它不是直接清理可回收物件,而是將存活物件都向一端移動,然後清理掉端邊界以外的記憶體。

4、分代回收演算法

分代回收演算法根據Java的語言特性,將複製演算法和標記整理演算法的的特點相結合,針對不同的記憶體情景使用不同的回收演算法。

以上就是java垃圾回收的演算法介紹,希望對大家有所幫助。更多Java學習指路:

本教程操作環境:windows7系統、java10版,DELL G3電腦。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1343/viewspace-2830239/,如需轉載,請註明出處,否則將追究法律責任。

相關文章