復制算法回收垃圾


兩個最基本的java回收算法:復制算法和標記清理算法
復制算法:兩個區域A和B,初始對象在A,繼續存活的對象被轉移到B。此為新生代最常用的算法
標記清理:一塊區域,標記可達對象(可達性分析),然后回收不可達對象,會出現碎片,那么引出
標記-整理算法:多了碎片整理,整理出更大的內存放更大的對象
兩個概念:新生代和年老代
新生代:初始對象,生命周期短的
永久代:長時間存在的對象
整個java的垃圾回收是新生代和年老代的協作,這種叫做分代回收。
P.S: Serial New收集器是針對新生代的收集器,采用的是復制算法
Parallel New(並行)收集器,新生代采用復制算法,老年代采用標記整理
Parallel Scavenge(並行)收集器,針對新生代,采用復制收集算法
Serial Old(串行)收集器,新生代采用復制,老年代采用標記整理
Parallel Old(並行)收集器,針對老年代,標記整理
CMS收集器,基於標記清理
G1收集器:整體上是基於標記 整理 ,局部采用復制

綜上:新生代基本采用復制算法,老年代采用標記整理算法。cms采用標記清理


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM