JVM学习4-JVM的年轻代垃圾回收器ParNew

最常用的新生代垃圾回收器ParNew

假设没有最新的G1垃圾回收器的话,通常大家线上系统都是ParNew垃圾回收器作为新生代的垃圾回收器,当然现在即使有了G1,其实很多线上系统还是用的ParNew。

新生代的ParNew垃圾回收器主打的就是多线程垃圾回收机制,另外一种Serial垃圾回收器主打的是单线程垃圾回收,他们俩都是回收新生代的,唯一的区别就是单线程和多线程的区别,但是垃圾回收算法是完全一样的。

ParNew垃圾回收器如果一旦在合适的时机执行Minor GC的时候,就会把系统程序的工作线程全部停掉,禁止程序继续运行创建新的对象,然后自己就用多个垃圾回收线程去进行垃圾回收,回收的机制和算法就跟之前说的是一样的。
在这里插入图片描述

如何为线上系统指定使用ParNew垃圾回收器

在启动系统的时候如果要指定使用ParNew垃圾回收器,是用什么参数呢?

使用“-XX:+UseParNewGC”选项,只要加入这个选项,JVM启动之后对新生代进行垃圾回收的,就是ParNew垃圾回收器了。

那么Minor GC的时机,检查机制,包括垃圾回收的具体过程,以及对象升入老年代的机制都是之前那一套,只不过ParNew会使用多个线程来进行垃圾回收。

ParNew垃圾回收器默认情况下的线程数量

因为现在一般部署系统的服务器都是多核CPU的,所以为了在垃圾回收的时候充分利用多核CPU的资源,一旦指定了使用ParNew垃圾回收器之后,就默认给自己设置的垃圾回收线程的数量就是跟CPU的核数是一样的。
在这里插入图片描述

如果要自己调节ParNew的垃圾回收线程数量,使用“-XX:ParallelGCThreads”参数即可,通过他可以设置线程的数量。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值