天天看點

記憶體配置設定政策

基本原則:

優先配置設定到Eden區域

大對象直接進入老年代

長期存活的對象被配置設定到老年代

空間配置設定擔保

動态對象的年齡判斷

對象優先在Eden上配置設定

配置選用制定垃圾回收機制

大數組看一下日志

大對象直接進入老年代

gc在eden執行頻率比較高,如果處理大對象性能消耗比較大。

是以将對象放入到老年代中

大對象的值設定 -XX:PretenureSizeThreshold

public class main{

public static int M = 10241024;

public static void main(String arges[]){

byte[] b1 = new byte[10M];

}

}

長期存活的對象将進入老年代

-XX:MaxTenuringThreshold

年齡計數器:

新生代垃圾回收算法複制算法,将對象複制到survivor中,這時候就有個年齡計數器

計數1,當達到一定次數,這個對象就會跑到老年代中

空間配置設定擔保:

-XX:+(-)HandlePromotionFailure

先判斷老年代是否能容納下所有新生代内容

檢查參數-XX:+(-)HandlePromotionFailure, +号為開啟,-号為禁用

檢測平均值即老年代最大的連接配接的記憶體空間是否大于曆次晉升到老年代對象值的

平均大小

繼續閱讀