本篇文章主要是模拟JVM发生Full GC的情况。
1、JVM的参数设置
JVM参数设置(JDK1.8)
-XX:InitialHeapSize=20971520
-XX:MaxHeapSize=20971520
-XX:NewSize=10485760
-XX:MaxNewSize=10485760
-XX:SurvivorRatio=8
-XX:MaxTenuringThreshold=15
-XX:PretenureSizeThreshold=3145728/5242880
-XX:+UseParNewGC
-XX:+UseConcMarkSweepGC
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-Xloggc:gc.log
2、老年代可用空间小于新生代存活对象所占空间,没有开启空间担保参数,触发FullGC。
2.1.Java 代码
public class GCDemo_06 {
public static void main(String[] args) {
byte[] array_1 = new byte[4 * 1024 * 1024];
array_1 = null;
byte[] array_2 = new byte[2 * 1024 * 1024];
byte[] array_3 = new byte[2 * 1024 * 1024];
byte[] ar