新生代分配
-XX:SurvivorRatio
设置新生代分配比例
表示Eden空间与from/to空间的比例
XX:SurvivorRatio=eden/from=eden/to
package com.bjsxt.base001;
public class Test02 {
public static void main(String[] args) {
byte[] b = null;
// 连续向系统申请10MB空间
for (int i = 0; i < 10; i++) {
b = new byte[1 * 1024 * 1024];
}
}
}
程序分析
每次分配1M,循环10次
总共需要分配10M空间
测试
第一次分配
-Xms20m –Xmx20m -Xmn1m -XX:SurvivorRatio=2 -XX:+PrintGCDetails -XX:+UseSerialGC
新生代
大小为1M,比例为2
第二次分配
-Xms20m –Xmx20m –Xmn7m -XX:SurvivorRatio=2 -XX:+PrintGCDetails -XX:+UseSerialGC
新生代
大小为7M,比例为2