Java 15 使 ZGC、Z 垃圾收集器成为标准功能。它是 Java 15 之前的一个实验性功能。它是低延迟、高度可扩展的垃圾收集器。
ZGC是在 Java 11 中作为一项实验性功能引入的,因为开发人员社区认为它太大而无法提前发布。从那时起,对这个垃圾收集做了很多改进,例如 -
- 并发类卸载
- 取消提交未使用的内存
- 支持班级数据共享
- NUMA
- 多线程堆Pre-touch
- 最大堆大小限制从 4 TB 到 16 TB。
即使在机器学习应用程序等海量数据应用程序的情况下,ZGC 也具有高性能和高效工作。它确保在处理数据时不会因垃圾收集而长时间停顿。它支持 Linux、Windows 和 MacOS。
Shenandoah 低暂停时间垃圾收集器现在已退出实验阶段。它已被引入 JDK 12,从 Java 15 开始,它是标准 JDK 的一部分。