Java虚拟机(JVM)常用参数介绍

本文介绍了Java虚拟机JVM的关键参数,如-Xms,-Xmx用于设置堆大小,-XX:UseConcMarkSweepGC和-XX:UseParallelGC选择垃圾回收器,以及如何通过参数优化性能、调试和安全管理Java程序。同时,文章提到了Java8之后元数据区替代了永久代,并提供了分析内存和垃圾回收的参数。
摘要由CSDN通过智能技术生成

Java虚拟机(JVM)是Java程序运行的核心,通过设置不同的JVM参数,可以对Java程序的性能、调试和安全等方面进行优化和管理。


一.以下是常用的JVM参数和注释:
1. -Xms<size>:设置JVM的初始堆大小。
2. -Xmx<size>:设置JVM的最大堆大小。
3. -Xmn<size>:设置JVM的新生代大小,通常建议设置为整个堆大小的1/3或1/4。
4. -XX:PermSize=<size>:设置JVM的永久代初始大小。
5. -XX:MaxPermSize=<size>:设置JVM的永久代最大大小。
6. -XX:MaxNewSize=<size>:设置JVM的新生代最大大小。
7. -XX:SurvivorRatio=<ratio>:设置JVM中Eden区和Survivor区的比例。
8. -XX:+UseConcMarkSweepGC:启用并发标记清除垃圾回收器。
9. -XX:+UseParallelGC:启用并行垃圾回收器。
10. -XX:+PrintGCDetails:打印垃圾收集器的详细信息。
11. -XX:-UseGCOverheadLimit:关闭垃圾回收器超过98%时抛出异常的限制。
12. -XX:CompileThreshold=<num>:设置JIT编译器的触发阈值。
13. -XX:+HeapDumpOnOutOfMemoryError:在发生OutOfMemoryError时,自动dump出JVM中的内存信息。
14. -XX:+PrintCommandLineFlags:打印JVM启动时的参数信息。

二.注:
1. -Xms和-Xmx参数通常设置为相同的值,以避免JVM在运行时重新调整堆大小,影响性能。
2. -XX:PermSize和-XX:MaxPermSize参数仅适用于Java 8及之前的版本,Java 8之后使用的是元数据区(Metaspace)。
3. -XX:+UseConcMarkSweepGC和-XX:+UseParallelGC参数通常用于提高Java应用程序的吞吐量。
4. -XX:+PrintGCDetails和-XX:+HeapDumpOnOutOfMemoryError参数通常用于分析JVM的垃圾回收情况和内存泄漏等问题。
5. -XX:+PrintCommandLineFlags参数可以打印JVM启动时使用的所有参数信息,方便调试和管理。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值