-Xms 用来设置堆空间(年轻代+老年代)的初始内存大小 -X:是jvm运行参数 ms:memory start -Xmx:用来设置堆空间(年轻代+老年代)的最大内存大小 默认堆空间大小 初始内存大小:物理电脑内存大小/64 最大内存大小:物理内存大小/4 手动设置: -Xms600m -Xmx600m 开发中建议将初始堆内存和最大堆内存设置成相同的值。 查看设置的参数: 方式1: jps / jstat -gc 进程id 方式2: -XX:+PrintGCDetails
执行jinfo -flag NewRatio 进程号 得到 -XX:NewRatio=2 * -XX:NewRatio: 设置新生代和老年代的比例,默认值是2 * -XX:-UseAdaptiveSizePolicy :关闭自适应的内存分配策略 (暂时用不到) * -XX:SurvivorRatio=8: 设置新生代中Eden区与Survivor区的比例 8:1:1 * -Xmn:设置新生代最大内存大小 (一般不设置) * • -XX:+PrintFlagsInitial:查看所有的参数的默认初始值 * • -XX:+PrintFlagsFinal:查看所有的参数的最终值(可能会存在修改,不再是 * 初始值) * • -Xms:初始堆空间内存(默认为物理内存的 1/64) * • -Xmx:最大堆空间内存(默认为物理内存的 1/4) * • -Xmn:设置新生代的大小。(初始值及最大值) * • -XX:NewRatio:配置新生代与老年代在堆结构的占比 * • -XX:SurvivorRatio:设置新生代中 Eden 和 S0/S1 空间的比例 * • -XX:MaxTenuringThreshold:设置新生代垃圾的最大年龄 * • -XX:+PrintGCDetails:输出详细的 GC 处理日志 * – 打印 gc 简要信息:①-Xx:+PrintGC ② - verbose:gc * • -XX:HandlePromotionFalilure:是否设置空间分配担保