首页 > 其他 > 详细

JVM经典垃圾回收器之 serial 收集器 和 serialOld 收集器

时间:2021-06-30 18:12:35      阅读:14      评论:0      收藏:0      [点我收藏+]

   Serial 收集器是最基础、历史最悠久的收集器,曾经(JDK1.3.1之前) 是HotSpot 新生代收集器的唯一选择,对应的老年代是 Serial Old 收集器。

   Serial:基于 复制算法,Serial Old:基于标记-整理算法。

   两大特点:

   1.使用一个处理器或一条收集线程取完成垃圾收集工作;

   2.进行垃圾收集时,必须暂停其他所有工作线程,直到它收集结束。

   缺点:

   多线程环境下,效率低下。

   优点:

    1.简单而高效,迄今为止仍然时HotSpot 虚拟机允许在 客户端模式(也就是32bit)下的默认新生代收集器;

    2.在所有收集器里额外内存消耗最小。

    测试目的:多线程环境下 同一程序 parallelGC和 serial 回收器比较

    测试环境:   JDK8 IDEA

    测试介绍:

    +UseParallelGC  新生代使用 parallel scavenge,老年代使用 serialOld(PS markSweep)

    +UserSerialGC  新生代使用 serial ,老年代使用 serialOld

    测试过程: 

        -XX:+UseParallelGC   parallelGC,这里可以不用加该参数 ,该垃圾回收期为 jdk8默认的垃圾回收器

技术分享图片

 

 多线程环境下限制GC回收线程数为1,总花费时间上升技术分享图片

 

 

  多线程环境下, Serial 效率较低技术分享图片

 

总结:多线程环境下不建议使用 serial 收集器,但是单线程环境下建议使用。

JVM经典垃圾回收器之 serial 收集器 和 serialOld 收集器

原文:https://www.cnblogs.com/chenqiandui/p/14953366.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!