首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Java8 的 G1 垃圾回收器相对于之前的 CMS 有什么特别的呢?

但是可以与用户程序并发执行; 最终标记:最终标记和 CMS 的重新标记的思路一直,也是为了修正并发标记期间由于用户程序并发运行而导致标记产生变动的那一部分对象,不过不同的是 G1 会将这段时间对象变化记录在线程 Remembered...Set Logs 里面,最终标记阶段需要把 Remembered Set Logs 的数据合并到 Remembered Set 中,这个阶段需要停顿线程,不过是可并行执行; 筛选回收:最后一步筛选回收是...上面提到了一个 Remembered Set 记忆集,是用来记录对象引用的,在并发标记的时候有对象引用发生变更的时候会记录到这里,等到最终标记的时候进行修正。

81320

JVM06-经典垃圾收集器

ParNew收集器Parallel Scavenge收集器老年代收集器Serial Old收集器Parallel Old收集器CMS收集器优点缺点G1收集器横跨整个堆内存建立可预测的时间模型避免全堆扫描-Remembered...避免全堆扫描-Remembered Set G1把Java堆分为多个Region,就是"化整为零"。...当进行内存回收时,在GC根节点的枚举范围内加入Remembered Set即可保证不对全堆扫描也不会有遗漏。...如果不计算维护Remembered Set的操作,G1收集器的运作大致可划分为以下几个步骤 : 初始标记(Initial Marking) 仅仅只是标记一下GC Roots能直接关联到的对象,并且修改TAMS...Remembered Set Logs的数据合并到Remembered Set中, 这阶段需要停顿线程,但是可并行执行。

23630
领券