- 在线客服 
  - 扫描二维码 
 下载博学谷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基础 字节流与字符流的区别是什么?
 - 要把一片二进制数据数据逐一输出到某个设备中,或者从某个设 备中逐一读取一片二进制数据,不管输入输出设备是什么,我们 要用统一的方式来完成这些操作,用一种抽象的方式进行描述, 这个抽象描述方式起名为 IO 流,对应的抽象类为 OutputStream 和 InputStream ,不同的实现类就代表不同的输入和输出设备, 它们都是针对字节进行操作的。 - 9728 - 2019-06-03 11:19:03 
  - 零基础Java在线学习方式有哪些?
 - 零基础Java在线学习方式有哪些?总结起来,基本上就是四种方式,即多阅读相关书籍,观看学习视频,实战练习敲代码,与在线老师交流沟通。无论是在线自学也好,还是报线上的培训班,最有效的Java学习方式,也就是以上这些。下面小编来详细为大家讲解Java在线学习具体要怎么做。 - 6189 - 2019-09-29 10:31:58 
  - 自学Java如何才能学好?
 - Java编程语言被广泛应用于互联网产品开发中,其开发人才需求量很大。很多高校毕业生以及在职人群都想通过学习Java,获得一份高薪的工作岗位。目前想进入Java开发岗位主要通过自学或者通过Java培训的方式。如果自学Java,如何获取相应的自学资源?如何才能学好Java呢? - 5530 - 2019-10-30 18:47:49 
  - Java线上培训班怎么选择?
 - Java线上培训班授课的优势不受时间、空间、教学环境的限制;教学资源较为优质,避免了要去外省或外市上课的时间成本。传统模式是线下授课,新兴起的是在线授课,其实两种授课方式各有所长,适应不同的人,两种学习方式相辅相成。 - 6076 - 2019-11-12 17:03:06 
  - Spring与Web环境集成总结
 - 今天咋们要学习的是SpringMVC框架中Spring与Web环境集成的内容,主要涉及的知识点有ApplicationContext应用上下文获取方式,Spring提供获取应用上下文的工具,导入Spring集成web的坐标,配置ContextLoaderListener监听器以及通过工具获得应用上下文对象。下面我们来看看具体的学习内容吧~ - 4615 - 2020-04-17 20:33:31 
 
  
  
 