前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JVM老年代垃圾收集器Serial Old和Parallel Old

JVM老年代垃圾收集器Serial Old和Parallel Old

原创
作者头像
开源日记
修改2020-12-07 11:44:15
1.3K0
修改2020-12-07 11:44:15
举报
文章被收录于专栏:JVMGCJVMGC
image-20201109212219872
image-20201109212219872

Serial Old垃圾收集器

老年代垃圾收集器,与Serial一样,是一个单线程垃圾收集器,不同的是用的算法不一样(标记-整理)

image-20201110082318285
image-20201110082318285

根据老年代的特点,有人设计了标记-整理(Mark Compact)算法,标记过程和标记-清除算法一样,但是后续步骤不是直接对可回收对象进行清理,而是让存活对象向一端移动,然后清除掉边界以外的内存,如下图所示。

img
img

复制算法在对象存活比较高的老年代需要复制大量的对象,效率将会贬低,如果不想浪费50%的内存,就需要有额外的空间进行分配担保,以应对对象100%都存活的极端情况,所以老年代并不适用复制算法

复制收集算法在对象存活率较高时就要进行较多的复制操作,效率将会变低。更关键的是,如果不想浪费50%的空间,就需要有额外的空间进行分配担保,以应对被使用的内存中所有对象都100%存活的极端情况,所以在老年代一般不能直接选用这种算法。

Parallel Old

老年代收集器,是Parallel Scavenge老年代版本,用的算法是标记-整理,在JDK1.6提供,多线程收集

image-20201110082244415
image-20201110082244415
wx.jpg
wx.jpg

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Serial Old垃圾收集器
  • Parallel Old
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档