JVM虛擬機 YGC和FGC發生的具體場景


1、YGC和FGC是什么 

   YGC :對新生代堆進行gc。頻率比較高,因為大部分對象的存活壽命較短,在新生代里被回收。性能耗費較小。         (復制算法 ---> 一般適用對象存活率低的場景)

   FGC :全堆范圍的gc。默認堆空間使用到達80%(可調整)的時候會觸發fgc。                                                    (標記整理或者標記清除算法 ---> 一般適用於對象存活率高的場景)

2、什么時候執行YGC和FGC

   1、eden空間不足,執行 young gc

   2、old空間不足,perm空間不足,調用方法System.gc() ,ygc時的悲觀策略, dump live的內存信息時(jmap –dump:live),都會執行full gc


免責聲明!

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



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