byte[] array1 = new byte[2 * 1024 * 1024];
array1 = new byte[2 * 1024 * 1024];
array1 = new byte[2 * 1024 * 1024];
array1 = null;
byte[] array2 = new byte[128 * 1024];
//第一次GC 存活1m 移动到老年区
byte[] array3 = new byte[2 * 1024 * 1024];
array3 = new byte[2 * 1024 * 1024];
array3 = new byte[2 * 1024 * 1024];
array3 = new byte[128 * 1024];
array3 = null;
//第二次GC 存活128k
byte[] array4 = new byte[2 * 1024 * 1024];
// 新生代8m from 1m to 1m 老年代10m
// 这是JVM参数设置
//
// -XX:NewSize=10485760 -XX:MaxNewSize=10485760 -XX:lnitialHeapSize=20971520 -XX:MaxHeapSize=20971520
// -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=15 -XX:PretenureSizeThreshold=10485760 -XX:+UseParNewGC
// -XX:+UseConcMarkSweepGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:log
结果是老年代近5M,怎么算也不对,琢磨一下午,后来试了试空方法,找到原因了