JVM虚拟机:垃圾回收器组合参数设定

本文重点

前面的课程中我们介绍了目前JVM中主流的垃圾回收器,不同的回收器会有不同的组合,其中1.8版本的jdk中,默认使用的是Parallel Scavenge+Parallel Old,也就是说新生代使用Parallel Scavenge,然后老年代使用Parallel Old,这是默认的,当然我们也可以通过参数的方式进行指定,本文就介绍一下常见垃圾回收器组合参数设定。

参数

-XX:+UseSerialGC = Serial + Serial Old

新生代和老年代都使用串行化的方式,这适用于小型程序

-XX:+UseParNewGC = ParNew + SerialOld

这个组合已经很少用(在某些版本中已经废弃)

-XX:+UseConc(urrent)MarkSweepGC = ParNew + CMS + Serial Old

新生代使用ParNew,然后老年代使用CMS,当产生特别多的内存碎片的时候使用串行化的方式。

-XX:+UseParallelGC = Parallel Scavenge + Parallel Old (1.8默认)

-XX:+UseParallelOldGC = Parallel Scavenge + Parallel Old

这两个参数可以产生同样的效果,无论是新生代还是老年代都使用并行化的方式

-XX:+UseG1GC = G1

使用G1垃圾回收器

相关推荐
competes28 分钟前
慈善基金投资底层逻辑应用 顶层代码低代码配置平台开发结构方式数据存储模块
java·开发语言·数据库·windows·sql
qq_372906931 小时前
如何在 Vuetify 中可靠捕获 Chip 关闭事件(包括键盘触发)
jvm·数据库·python
Ulyanov1 小时前
用Pyglet打造AI数字猎人:从零开始的Python游戏开发与强化学习实践
开发语言·人工智能·python
2501_913061341 小时前
网络原理知识
java·网络
独自归家的兔1 小时前
OCPP 1.6 协议详解:StatusNotification 状态通知指令
开发语言·数据库·spring boot·物联网
希望永不加班1 小时前
Spring AOP 代理模式:CGLIB 与 JDK 动态代理区别
java·开发语言·后端·spring·代理模式
RNEA ESIO2 小时前
PHP进阶-在Ubuntu上搭建LAMP环境教程
开发语言·ubuntu·php
23471021272 小时前
4.15 学习笔记
开发语言·软件测试·python
flushmeteor2 小时前
java的动态代理和字节码生成技术
java·动态代理·代理·字节码生成
eggwyw2 小时前
基于SpringBoot和PostGIS的云南与缅甸的千里边境线实战
java·spring boot·spring