Java 教程

Java 控制语句

面向对象编程

Java 内置类

Java 文件处理

Java 错误和异常

Java 多线程

Java 同步

Java 网络编程

Java 集合

Java 接口

Java 数据结构

Java 集合算法

高级 Java

Java 其他

Java APIs 和框架

Java 类参考

Java 有用资源

Java 12 垃圾回收机制的变更



Java 12 对其垃圾回收算法进行了多项增强。

JEP 189 – Shenandoah:低暂停时间垃圾收集器(实验性)

Shenandoah 是一种实验性的低暂停时间垃圾收集器,旨在减少 GC 暂停时间。它与正在运行的 Java 线程并行工作。这有助于减少 GC 对堆大小的依赖性并使其保持一致。现在,无论是 2MB 还是 2GB 的堆空间,垃圾回收暂停时间都将相似。

Shenandoah 预计将作为 Java 15 的主要 JAVA 版本的一部分。

JEP 346 – 及时返回未使用的已提交内存

在 Java 12 中,如果应用程序处于非活动状态,G1 将处理 Java 堆空间,并可能将内存释放回操作系统。这种主动行为可以节省和释放内存。

JEP 344:可中止的混合收集

在 Java 12 中,G1 的效率得到了提高。现在,如果 G1 混合收集超过定义的暂停限制,则可以中止。现在混合收集被分成强制性和可选性。G1 收集器可以优先处理强制性集合以检查暂停时间目标。

广告
© . All rights reserved.