Java13 - ZGC 增强功能

ZGC 或 Z 垃圾收集器是随 Java 11 引入的一种低延迟垃圾收集机制。 ZGC 确保垃圾收集暂停时间不依赖于堆大小。 无论堆大小是 2MB 还是 2GB,它都不会超过 10 毫秒。

但 ZGC 在将未使用的堆内存返回给操作系统方面存在限制,就像其他 HotSpot VM GC(例如 G1 和 Shenandoah)一样。 以下是 Java13 所做的增强:

  • 默认情况下,ZGC 会将未提交的内存返回给操作系统,直到达到最大堆大小。

  • ZGC 通过减少内存占用来提高性能。

  • 与 4TB 的大小限制相比,ZGC 现在支持 16TB 的堆大小。

为了回到 Java 11 的垃圾收集方式,我们可以使用以下选项:

  • 使用 -XX:-ZUncommit 选项

  • 将 -Xms 和 -Xmx 堆大小设置为相同。