首页IT科技jvm参数 onthrow(JVM参数:带你认识-X和-XX参数)

jvm参数 onthrow(JVM参数:带你认识-X和-XX参数)

时间2025-04-28 19:29:05分类IT科技浏览4129
导读:摘要:JVM参数分为三类:标准参数、非标准参数(-X参数)和高级选项(-XX参数)。本文主要为大家讲解-X参数和-XX参数。...

摘要:JVM参数分为三类:标准参数            、非标准参数(-X参数)和高级选项(-XX参数)           。本文主要为大家讲解-X参数和-XX参数                。

本文分享自华为云社区《JVM运行参数之-X和-XX参数》            ,作者:共饮一杯无       。

JVM参数分为三类:标准参数                 、非标准参数(-X参数)和高级选项(-XX参数)         。本文主要为大家讲解-X参数和-XX参数                。

-X参数

JVM的-X参数是非标准参数                 ,在不同版本的jvm中    ,参数可能会有所不同         ,可以通过java -X查看非标准参数         。

运行模式-Xint    、-Xcomp         、-Xmixed

在解释模式(interpreted mode)下                  ,-Xint标记会强制JVM执行所有的字节码       ,当然这会降低运行速度      ,通常低10倍或更多      。 -Xcomp参数与它(-Xint)正好相反                  ,JVM在第一次使用时会把所有的字节码编译成本地代码          ,从而带来最大程度的优化                。 然而   ,很多应用在使用-Xcomp也会有一些性能损失                  ,当然这比使用-Xint损失的少             ,原因是-xcomp没有让JVM启用JIT编译器的全部功能            。JIT编译器可以对是否需要编译做判断,如果所有代码都进行编译的话               ,对于一些只执行一次的代码就没有意义了   。 -Xmixed是混合模式                ,将解释模式与编译模式进行混合使用  ,由jvm自己决定            ,这是jvm默认的模式                 ,也是推荐使用的模式                。

示例:强制设置运行模式

#强制设置为解释模式 E:\jvm>java -showversion -Xint TestJVM java version "1.8.0_171" Java(TM) SE Runtime Environment (build 1.8.0_171-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, interpreted mode) zjqzjq #强制设置为编译模式 E:\jvm>java -showversion -Xcomp TestJVM java version "1.8.0_171" Java(TM) SE Runtime Environment (build 1.8.0_171-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, compiled mode) zjqzjq #默认的混合模式 E:\jvm>java -showversion TestJVM java version "1.8.0_171" Java(TM) SE Runtime Environment (build 1.8.0_171-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode) zjqzjq

-XX参数

-XX参数也是非标准参数    ,主要用于JVM的调优和debug操作               。

-XX参数的使用有2种方式         ,一种是boolean类型                  ,一种是非boolean类型: boolean类型

格式:-XX:[±]

如:-XX:+DisableExplicitGC 表示禁用手动调用gc操作       ,也就是说调用System.gc()无效 非boolean类型

格式:-XX:

如:-XX:NewRatio=2 表示新生代和老年代的比值      ,表示新生代占1                  ,老年代占2。则新生代占整个堆的1/3             。

用法:

E:\jvm>java -showversion -XX:+DisableExplicitGC TestJVM java version "1.8.0_171" Java(TM) SE Runtime Environment (build 1.8.0_171-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode) zjqzjq

-Xms与-Xmx参数(设置jvm的堆内存的初始大小和最大大小)

-Xms与-Xmx分别是设置jvm的堆内存的初始大小和最大大小                 。

-Xmx2048m:等价于-XX:MaxHeapSize          ,设置JVM最大堆内存为2048M   。

-Xms512m:等价于-XX:InitialHeapSize   ,设置JVM初始堆内存为512M           。 适当的调整jvm的内存大小                  ,可以充分利用服务器资源             ,让程序跑的更快                。示例:
E:\jvm>java -Xms512m -Xmx2048m TestJVM zjqzjq

点击关注,第一时间了解华为云新鲜技术~

声明:本站所有文章               ,如无特殊说明或标注                ,均为本站原创发布      。任何个人或组织  ,在未征得本站同意时            ,禁止复制                  、盗用       、采集      、发布本站内容到任何网站                  、书籍等各类媒体平台         。如若本站内容侵犯了原著者的合法权益                 ,可联系我们进行处理                。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
php常见设计模式和用途(浅谈PHP设计模式的原型模式) system进程无响应有什么影响(system是什么进程 system进程可以关闭吗)