Wie in JEP 377 geht es in JEP 379 ebenfalls um einen Garbage Collector, in diesem Fall den Shenandoah GC. Auch dieser soll endlich den experimentellen Status verlassen und fester Bestandteil von Java 15 werden – und wie ZGC soll auch Shenandoah nicht den Standard Garbage Collector von Java ersetzen.
Bereits 2014 wurde mit JEP 189 der Shenandoah GC als experimentelles Feature für Java vorgeschlagen, doch erst mit JDK 12 wurde er tatsächlich in Java integriert. Aktuell wird er noch durch die Optionen -XX:+UnlockExperimentalVMOptions
und -XX:+UseShenandoahGC
auf der Kommandozeile aktiviert. Durch das Verlassen des experimentellen Status‘ könnte man zukünftig auf den ersten Befehl verzichten.
Wie genau der Shenandoah GC funktioniert, hat Walery Strauch in seinem umfangreichen Fachartikel, der hier auf JAXenter verfügbar ist, im Detail beschrieben. Wer lieber das audiovisuelle Erlebnis sucht, für haben wir auch eine Session zum Shenandoah GC, ebenfalls von Walery Strauch, gehalten auf der JAX 2019.