對象進入老年代的方式有哪些?


方式一:

在堆中分配的大對象直接挪到老年代。

方式二:

分代年齡達到設定值(默認是15)

方式三:

對象動態年齡判斷

當前放對象的Survivor區域里(其中一塊區域,放對象的那塊s區),一批對象的總大小大於這塊Survivor區域內存大小的
50%(-XX:TargetSurvivorRatio可以指定),那么此時大於等於這批對象年齡最大值的對象,就可以直接進入老年代了,
例如Survivor區域里現在有一批對象,年齡1+年齡2+年齡n的多個年齡對象總和超過了Survivor區域的50%,此時就會
把年齡n(含)以上的對象都放入老年代。這個規則其實是希望那些可能是長期存活的對象,盡早進入老年代。對象動態年
齡判斷機制一般是在minor gc之后觸發的。

方法四:

 


免責聲明!

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



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