ZGC简单介绍
所属分类 ZGC
浏览量 1524
ZGC 一个可伸缩低延迟的垃圾回收器
主要特点
能把回收时间控制在10ms以内,而且不受堆大小的影响,支持TB级别的垃圾回收。
ZGC和G1类似,把整个堆分成多个region
一次完整的 ZGC 回收周期分为以下几个阶段(Phase)
Pause Mark Start 标记根对象
Concurrent Mark 并发标记阶段
Concurrent Relocate 并发重定位
活动对象被移动到新的 Heap Region B-region 中,之前旧对象所在的 Heap Region A-region 即可复用;
B-region 中对象之间的引用关系将会在这一阶段被更新;
在重定位过程中,新旧对象的映射关系(同一对象在不同 Region 中的映射关系)被记录在了 Forwarding Tables 中。
Pause Mark Start
这个阶段实际上已经进入了新的 ZGC Cycle,同样也是标记根对象;
Concurrent Remap
并发重映射 这个阶段除了标记根对象直接引用的对象外,还会根据上个 ZGC Cycle 中生成的 Forwarding Tables 更新跨 Heap Region 的引用;
Pause Mark Start 阶段进行根对象扫描(Root Scanning)时会出现短暂的暂停。
上一篇
下一篇
docker commit命令使用
使用Dockerfile定制镜像
GC性能度量指标
docker常用命令
docker Busybox 实战
java调用c方法JNA实例