JDK8的Parallel GC with 4 thread(s)的真正含义

JDK1.8在Server模式下,默认垃圾回收器为Parallel Scavenge(新生代)+ Parallel Old(老年代)。 Parallel GC with 4 thread(s)意味着使用了4个线程进行垃圾回收。以往资料中-XX:+UseParallelGC常被误解为Parallel Scavenge+Serial Old,实际上从JDK 7u4开始,老年代默认使用Parallel Old。这一误解源于官方文档的更新不及时。
摘要由CSDN通过智能技术生成

JDK1.8服务器环境下,使用jmap -heap 21248查看堆时,能够看到里面有这样的内容

using thread-local object allocation.
Parallel GC with 4 thread(s)

Parallel GC with 4 thread(s)的真正含义是:垃圾回收器新生代是Parallel Scavenge,老年代是Parallel Old。这也是JDK8在Server模式下的默认垃圾回收器。

此时,通过命令行查看:

java -XX:+PrintCommandLineFlags
-XX:InitialHeapSize=125030592 -XX:MaxHeapSize=2000489472 -XX:+PrintCommandLineFlags -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseParallelGC

输出的-XX:+UseParallelGC,在我们曾经见到的很多书籍或者资料中,代表的都是Parallel Scavenge(新生代) + Serial Old(老年代)。这其实是没有及时更新造成的一个误导。

通过官方网站可以得到证实:

在 JDK 8 的官网有这样的说法:

链接:https://docs.oracle.com/javase/8

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值