美文网首页
JVM的各种参数设置

JVM的各种参数设置

作者: 胖瘦馒头 | 来源:发表于2018-07-16 21:04 被阅读0次

    -xmx[size]堆的最大值

    -xms[size] 堆的最大值

    -xss[size]栈的容量

    -XX:PermSize=[size]JVM初始分配的方法区大小

    -XX:MaxPermSize=[size]JVM最大允许分配的方法区大小,按需分配

    -XX:MaxDirectMemorySize=[size]本机直接内存的大小;Direct ByteBuffer分配的堆外内存到达指定大小后,即触发Full GC。该值默认是64M,最大为sun.misc.VM.maxDirectMemory()

    -XX:+PrintGCDetails JVM在GC时打印内存回收日志,并在进程退出时输出当前的内存各区域的分配情况

    -XX:PretenureSizeThreshold 来设置多大的对象直接进入老年代(单位字节) 来设置对象多大时可以直接进入年老代

    -XX:MaxTenuringThreshold 来设置对象晋升老年代的年龄阙值

    -XX:+HeadDumpOnOutOfMemoryError 控制OutOfMemoryError时打印堆的信息

    -XX:+DisableExplicitGC 这个参数作用是禁止代码中显示调用GC

    -XX:NewRatio 新生代(eden+2*Survivor)和老年代(不包含永久区)的比值

    -XX:SurvivorRatio 设置两个Survivor区和eden区的比值

    -XX:+NeverTenure 对象永远不会晋升到老年代

    -XX:+AlwaysTenure 表示没有幸存区,所有对象在第一次GC时,会晋升到老年代。

    -XX:newSize -XX:MaxNewSize

    就像可以通过参数(-Xms and -Xmx)指定堆大小一样,可以通过参数指定新生代大小。设置 XX:MaxNewSize 参数时,应该考虑到新生代只是整个堆的一部分,新生代设置的越大,老年代区域就会减少。一般不允许新生代比老年代还大,因为要考虑GC时最坏情况,所有对象都晋升到老年代。-XX:MaxNewSize 最大可以设置为-Xmx/2.

    -XX:+PrintTenuringDistribution 指定JVM 在每次新生代GC时,输出幸存区中对象的年龄分布。

    JVM各种参数详解

    相关文章

      网友评论

          本文标题:JVM的各种参数设置

          本文链接:https://www.haomeiwen.com/subject/xqkipftx.html