Java 10 - 強化されたガベージ コレクション
JEP 304 - ガベージ コレクター インターフェース
Java 10 より前は、GC (ガベージ コレクター) 実装コンポーネントがコード ベース内に散らばっており、簡単に置き換えることはできませんでした。 Java 10 では、別の GC 実装をプラグインできるように、Garbage-Collector インターフェイスが導入されています。これは、さまざまなガベージ コレクション実装からコード ベースを分離するのにも役立ちます。この機能は JEP 304 の一部です。
JEP 307 - G1 の並列フル GC
Java 9 では、G1 (ガベージ ファースト) ガベージ コレクターが導入されました。 G1 は完全なガベージ コレクションを回避しますが、同時スレッドがコレクションを探し、メモリが十分に速く回復しない場合、ユーザー エクスペリエンスに影響します。 Java 10 では、G1 はフォールバックのフル ガベージ コレクションを使用します。
この変更により、G1 はフル GC を並行して使用することで、最悪の場合のレイテンシーを改善します。現在、G1 は単一スレッドの mark-sweep-compact アルゴリズムを使用しています。 JEP 307 では、並列スレッドが mark-sweep-compact アルゴリズムを開始します。スレッドの数は、次のオプションを使用して制御できます。
$java -XX:ParallelGCThreads=4
Java