|
|
@ -20,4 +20,8 @@ G1 收集器的运作过程大致可划分为以下四个步骤: |
|
|
|
|
|
|
|
|
|
|
|
4.筛选回收 |
|
|
|
4.筛选回收 |
|
|
|
|
|
|
|
|
|
|
|
负责更新 Region 的统计数据,对各个 Region 的回收价值和成本进行排序,根据用户所期望的停顿时间来制定回收计划。 |
|
|
|
负责更新 Region 的统计数据,对各个 Region 的回收价值和成本进行排序,根据用户所期望的停顿时间来制定回收计划。 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
G1 的目标是在可控的停顿时间内完成垃圾回收,所以进行了分区设计,但是 G1 也存在一些问题,比如停顿时间过长,通常 G1 的停顿时间在几十到几百毫秒之间,虽然这个数字其实已经非常小了,但是在用户体验有较高要求的情况下还是不能满足实际需求,而且 G1 支持的内存空间有限,不适用于超大内存的系统,特别是在内存容量高于 100GB 的系统上,会因内存过大而导致停顿时间增长。 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ZGC 作为新一代的垃圾回收器,在设计之初就定义了三大目标:支持 TB 级内存,停顿时间控制在 10ms 之内,对程序吞吐量影响小于 15%。 |