在线客服
扫描二维码
下载博学谷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学习者必须掌握的语法重点。本文为大家整理了进程和线程、实现多线程方式、设置和获取线程名称、线程优先级和线程控制等等多线程知识点笔记,有需要的朋友一起来学习吧!
6746
2019-12-09 14:33:59
如何用Java查询个人信息?代码怎么写?
如何用Java查询个人信息?编程写好相应的规则,按照规则执行,在一定程度上大大提高了工作效率,在我们生活中的应用无处不在,当你面临公司大量的人员数据如何准确查询处理你想要的数据呢?
9050
2020-02-11 17:13:36
Zookeeper从入门到实践要学什么?
ZooKeeper是一种分布式协调服务,它用简单的架构和API,解决了在分布式环境中协调和管理服务的难题。那么,Zookeeper从入门到实践要学什么呢?以博学谷相关的免费课程为例,课程主要讲解了包括集群结构、集群配置、常用命令、部署模式、Zab协议、Dubbo架构等重要核心知识,并结合经典售票案例与实际应用。
5688
2020-06-26 18:22:26
Java学习需要什么软件?Java开发工具介绍
Java学习需要什么软件?学习过程中会用到很多Java软件,比如:Eclipse、IDEA、Git、FindBugs、Jcreator等。初学者最好将Java入门基础知识贯穿在一个实例中,逐步深入,可以帮助你快速进入Java编程的世界。
6361
2020-07-14 16:12:03
这样的Java自学姿势 学废最快
学习Java人数最多。原因是?自然是Java长久占据界编程语言排行榜中榜首,且众多互联网一线大厂如阿里、京东、美团、滴滴等都在使用Java架构。世间的一切,终究逃不过一个“钱”字。
5069
2021-03-05 11:27:54
