JDK 14 Early Access Build #23 (2019/11/13) is
now available. One of the more noteworthy changes with this build is the
removal of the Concurrent Mark Sweep garbage collector.
JEP 291 [“Deprecate the Concurrent Mark Sweep (CMS) Garbage Collector”]
deprecated the Concurrent Mark Sweep (CMS) garbage collector back in 2017 with
JDK 9 and
JEP 363 [“Remove the Concurrent Mark Sweep (CMS) Garbage Collector”] has been
targeted for JDK 14 to remove the CMS garbage collector altogether.
The next screen snapshot demonstrates that the CMS garbage collector was still available with JDK 14 Early Access Build #22.
With that JDK 14 Early Access Build #22, we see that specifying
-XX:+UseConcMarkSweepGC is allowed with only a deprecation warning shown: “Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.“
The next screen snapshot demonstrates that CMS cannot be specified as a garbage collector as of JDK 14 Early Access Build #23:
When trying to run the Java application with
-XX:+UseConcMarkSweepGC, the error message now shown states, “Ignoring option UseConcMarkSweepGC; support was removed in 14.0“.
Although the removal of the CMS garbage collector was the biggest change I noticed in JDK 14 Early Access Build #23, there were a few other changes that I found to be somewhat interesting. These include:
Published on Java Code Geeks with permission by Dustin Marx, partner at our
Opinions expressed by Java Code Geeks contributors are their own.
Java routinely hits inside the top five most popular programming languages and understandably so; it’s versatile, fairly easy to learn being that it’s a high-level language, and it satisfies a numb..