java虚拟机(九)--经常使用jvm参数

一、-Xms20M:html

  表示设置jvm堆的最小值为20M,必须以M为单位jvm

二、-Xmx20M:布局

  表示设置JVM堆的最大值为20M,必须以M为单位。将-Xmx和-Xms设置为同样能够避免JVM内存自动扩展。大的项目-Xmx和-Xms通常都要设置spa

到10G、20G甚至还要高指针

-XX:NewSize:htm

  新生代的大小对象

-XX:MaxNewSize:blog

  最大新生代的内存大小内存

三、-verbose:gc:get

  表示输出虚拟机中GC的详细状况

四、-Xss128k:

  表示能够设置虚拟机栈的大小为128k

五、-Xoss128k:

  表示设置本地方法栈的大小为128k。不过HotSpot并不区分虚拟机栈和本地方法栈,所以对于HotSpot来讲这个参数是无效的

六、-XX:PermSize=10M:

  表示JVM初始分配的永久代的容量,必须以M为单位

七、-XX:MaxPermSize=10M:

  表示JVM容许分配的永久代的最大容量,必须以M为单位,大部分状况下这个参数默认为64M

-XX:MetaspaceSize=:

  Metaspace默认大小

-XX:MaxMetaspaceSize=:

  Metaspace最大空间大小

-XX:+UseCompressedClassPointers:

  启用压缩的类指针,也就是32位,+启动,-关闭

-XX:+InitialCodeCacheSize:

  CodeCache初始大小

-XX:+ReservedCodeCacheSize:

  CodeCache最大内存

-XX:+CompressedClassSpaceSize:

  启动了CCS,才会有这部分空间

八、-Xnoclassgc:

  表示关闭JVM对类的垃圾回收

九、-XX:+TraceClassLoading:

  表示查看类的加载信息

十、-XX:+TraceClassUnLoading:

  表示查看类的卸载信息

十一、-XX:NewRatio=4:

  表示设置年轻代:老年代的大小比值为1:4,这意味着年轻代占整个堆的1/5

十二、-XX:SurvivorRatio=8:

  表示设置2个Survivor区:1个Eden区的大小比值为2:8,这意味着Survivor区占整个年轻代的1/5,这个参数默认为8

1三、-Xmn20M:

  表示设置年轻代的大小为20M

1四、-XX:+HeapDumpOnOutOfMemoryError:

  表示可让虚拟机在出现内存溢出异常时Dump出当前的堆内存转储快照

1五、-XX:+UseG1GC:

  表示让JVM使用G1垃圾收集器

1六、-XX:+PrintGCDetails:

  表示在控制台上打印出GC具体细节

1七、-XX:+PrintGC:

  表示在控制台上打印出GC信息

1八、-XX:PretenureSizeThreshold=3145728:

  表示对象大于31457283M、时直接进入老年代分配,这里只能以字节做为单位

1九、-XX:MaxTenuringThreshold=1:

  表示对象年龄大于1,自动进入老年代

-XX:TargetSurvivorRatio:

  若是进行进行一次GC存活的对象超过这个参数,会计算相同年龄全部对象大小的综合大于Survivor空间的一半,年龄大于或等于该年龄的对象

就能够直接进入老年代,无须等到MaxTenuringThreshold要求的年龄

-XX:PringTenuringDistribution:

  对象发生晋升的时候,打印堆中各个对象的年龄

20、-XX:CompileThreshold=1000:

  表示一个方法被调用1000次以后,会被认为是热点代码,并触发即时编译

2一、-XX:+PrintHeapAtGC:

  表示能够看到每次GC先后堆内存布局

2二、-XX:+PrintTLAB:

  表示能够看到TLAB的使用状况

2三、-XX:+UseSpining:

  开启自旋锁

2四、-XX:PreBlockSpin

  更改自旋锁的自旋次数,使用这个参数必须先开启自旋锁

转载自:http://www.javashuo.com/article/p-mimwrvau-ev.html,我的有加入Jdk1.8的相关参数

相关文章
相关标签/搜索