学习自:轻松永远记住经典jvm参数
有OutOfMemoryError有关的JVM参数_crash参数 java jvm_毛发旺盛的程序员的博客-CSDN博客
1、参数分类
参数开头有四种:-、-X、-XX、-D
java jvm.参数 jvm参数 -d_ctaxnews的技术博客_51CTO博客
标志 | 类型 | 说明 |
- | 标准参数 | 所有JVM都必须实现这些参数功能,并向后兼容 |
-X | 非标准参数 | 默认JVM实现这些参数,但是并非所有JVM都实现,且不保证向后兼容 |
-XX | 非stable参数 | 各个JVM实现有所不同,且将来会被随时取消,谨慎使用 |
-D | 系统属性 |
作用同设置于JAVA_HOME中的配置项。 如果所有项都通过-D配置,那么会覆盖掉JAVA_HOME中的配置。
|
2、-X
参数 | 理解 | 说明 |
-Xms | -X、memory、size | 初始堆内存大小 |
-Xmx | max | 堆最大内存 |
-Xmn | new | 新生代内存 |
-Xss | -X、stack、size | 栈大小 |
3、-XX
参数 | 说明 |
MetaspaceSize |
元空间初始大小。 该值太小会引起FULL GC。 |
MaxMetaspaceSize | 元空间最大大小。 |
+UseParNewGC
|
新生代区域多线程GC模式。 常规收集器是Serial单线程模式。 |
ParallelGCThreads |
GC并发线程数。 |
JVM会在遇到OutOfMemoryError时拍摄一个“堆转储快照”,并将其保存在一个文件中。 |
|
ExitOnOutOfMemoryError |
传递此参数时,抛出OutOfMemoryError时JVM将立即退出。用于终止程序,常用于容器化部署情况下出错时快速终止并重启。 为什么 java 容器推荐使用 ExitOnOutOfMemoryError 而非 HeapDumpOnOutOfMemoryError ? - 简书 |
UseGCOverheadLimit |
jvm会预判将要会发生OutOfMemery异常,就提早抛出这个异常。并不代表jvm没有内存空间了。 该参数会关闭JVM的预判功能。 |
CMSInitiatingOcCupancyFraction |
触发OldGC时,老年代内存使用率需要超过的阈值。 |
CMSClassUnloadingEnabled |
Java类卸载功能是否开启。 类卸载:类加载器不需要某个类时,将其从内存中释放。 JVM标志CMSClassUnloadingEnabled实际上做了什么?_pdb文件实际上做了什么?_offsetStackFrame在JVM规范中做了什么 - 腾讯云开发者社区 - 腾讯云 |
ExplicitGCInvokesConcurrent |
在做System.gc()时会做background模式CMS GC,即并行FULL GC,可提高FULL GC效率。 |
CrashOnOutOfMemoryError |
传入此参数时,JVM将在抛出OutOfMemoryError时立即退出。除了退出,JVM还会生成文本和二进制崩溃文件(如果启用了核心文件)。 有OutOfMemoryError有关的JVM参数_crash参数 java jvm_毛发旺盛的程序员的博客-CSDN博客 |
4、-D
参数 |
说明 |
-Dmarathon.app.id -Dhostname |
可以理解为是一些环境变量,最终会传入系统中使用。 |
-Duser.timezone、language、country | 时区、语言、地区 |
标签:JVM,含义,博客,CSDN,GC,jvm,参数 From: https://www.cnblogs.com/ShineLeBlog/p/17846435.html