在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
JVM可以算是初级程序员进阶高级程序员必须要掌握的核心技能之一。另外,在许多面试过程中,JVM也是检验Java程序员能力水平的试金石。今天我们不谈Java底层实现的原理,而是为大家整理汇总了一些常见的JVM 配置参数,希望对大家编写代码有所帮助。

1.-Xms
初始堆大小。只要启动,就占用的堆大小。
2.-Xmx
最大堆大小。java.lang.OutOfMemoryError:Java heap这个错误可以通过配置-Xms和-Xmx参数来设置。
3.-Xss
栈大小分配。栈是每个线程私有的区域,通常只有几百K大小,决定了函数调用的深度,而局部变量、参数都分配到栈上。当出现大量局部变量,递归时,会发生栈空间OOM(java.lang.StackOverflowError)之类的错误。
4.XXNewSize
设置新生代大小的绝对值。
5.-XX:NewRatio
设置年轻代和年老代的比值。比如设置为3,则新生代:老年代=1:3,新生代占总heap的1/4。
6.-XX:MaxPermSize
设置持久代大小。java.lang.OutOfMemoryError:PermGenspace这个OOM错误需要合理调大PermSize和MaxPermSize大小。
7.-XX:SurvivorRatio
年轻代中Eden区与两个Survivor区的比值。注意,Survivor区有form和to两个。比如设置为8时,那么eden:form:to=8:1:1。
8.-XX:HeapDumpOnOutOfMemoryError
发生OOM时转储堆到文件,这是一个非常好的诊断方法。
9.-XX:HeapDumpPath
导出堆的转储文件路径。
10.-XX:OnOutOfMemoryError
OOM时,执行一个脚本,比如发送邮件报警,重启程序。后面跟着一个脚本的路径。
以上就是程序员常用的JVM 配置参数的所有汇总。大家想要深入学习JVM并掌握JVM虚拟机底层原理,可以在博学谷平台进行相关免费视频课程的在线学习。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Java学习重点Java参数传递
众所周知,Java有两种参数传递方式,即按值传递和引用传递,而String类型比较特殊,需要单独讨论。Java参数传递只有值拷贝,没有引用传递。本文将讨论基本类型、引用类型和String类型。
7482
2019-08-02 18:56:51
电脑编程入门自学Java指南
随着Java近些年来的强劲发展,想要转行学习Java的初学者也越来越多了。然而,入门自学Java并不是一件轻松的事情。众所周知,万事开头难,尤其是没有编程语言基础的学习者,不仅仅需要付出更多的心血和汗水,还需要科学地制定学习规划,下面小编为大家准备了一份电脑编程入门自学Java指南,内容包括了Java的学习内容和路径,赶紧来一起看看吧!
6837
2019-12-30 15:15:34
Apollo如何快速入门?
如今,Apollo已经开始在很多的技术公司流行起来了,因此对于技术有要求的提IT工作者不妨现在就学起来。那么Apollo如何快速入门?比起自己一点点啃枯燥的文字理论,这里给大家推荐一个更有效的学习方式,即观看优质的免费视频课程进行学习,这样可以帮助大家快速掌握Apollo的特性、安装、工作原理和项目场景等等内容。
6242
2020-03-18 18:39:32
Java学习的重点难点是什么?新手入门有哪些门槛?
对于新入行的同学而言,开始学习Java是一个非常关键的过程,很多同学因为不了解Java学习的重点难点知识,导致学习中遇到诸多的问题,甚至走了不少弯路。那Java学习中的重点难点是什么?新手入门有哪些门槛呢?
8165
2020-07-29 09:40:55
Java入门应该学什么知识点?怎么入门?
零基础入门Java,先了解Java技术的背景及相关概念,了解什么是Java,代码语法基本格式,输出表达式;Java语言基础、循环、数组 ; 了解类和对象;OOP封装、继承、多态等内容。
6545
2021-05-20 14:34:30
