-XX:+PrintGC 打印GC执行信息
-XX:+PrintGCDetails 打印堆使用信息
PSYoungGen 新生代
eden 伊甸区
from 幸存区
to 幸存区
ParOldGen 老年代
Metaspace 元空间, 就是永久代, 1,8 以后使用的本地内存
-Xloggc:log/gc.log 使用外部文件记录CG
-XX:+TraceClassLoading 记录JVM加载的类
-Xmx20m 配置堆最大大小, Max Max
-Xms20m 配置堆最小大小, Max small
-Mms2m 配置新生代大小
-XX:NewRatio=4 新生代占堆大小比例
-XX:SurvivorRatio=6 幸存区占新生代大小的多少, 幸存区是要折半的分为to 和 from
-XX:+HeapDumpOnOutOfMemoryError 堆内存溢出跳出错误
-XX:+HeapDumpPath=log/oom.log OOM ouu of memory, 内存溢出
GC选择
-XX:+UseSerialGC 串行GC, STW (stop the world), 最古老的GC, 最稳定
-XX:+UseParNewGC 并行GC, 针对新生代, 老年代串行, STW
-XX:ParallelGCThreads 并行GC, 线程数设置
-XX:+UseParallelGC 并行GC, 和UseParNewGC 类似, STW , 同环境下优于
-XX:+UseParallelOldGC 并行GC,STW, 新生代和老年代都并行
-XX:+UseConcMarkSweepGC 著名的CMS, 并行GC, 不对新生代, 搭配ParNewGC使用, 初始标记和修正标记是STW 的, 初始标记 -> 并行标记 -> 修正标记 -> 清除标记
java -XX:+PrintCommandLineFlags -version 查看默认GC,