Java 8的默认垃圾回收器是什么?
当我检查JMX Beans时,它们显示新生代使用并行收集器,老年代使用串行收集器。
Java 8的默认垃圾回收器是什么?
当我检查JMX Beans时,它们显示新生代使用并行收集器,老年代使用串行收集器。
默认垃圾收集器:
Java有四种垃圾收集器(截至版本10),但在Java 11稳定版发布后,将会有5种类型。它们分别是:
S GC
P GC
CMS GC
G1 GC
ZGC
Java中的默认GC实现-
JVM GC
Java 7 - P GC Java 8 - P GC Java 9 - G1 GC Java 10- G1 GC Java 11- Z GC(I am not sure but it would be default GC of java 11)
如需了解更多有关ZGC的详细信息,请访问{{链接}}。
http://openjdk.java.net/projects/zgc/
https://www.opsian.com/blog/javas-new-zgc-is-very-exciting/
注意:如果您想验证JVM当前使用的GC,请使用以下命令显示默认GC:
$ java -XX:+PrintCommandLineFlags -version
如果您想根据自己的需要设置GC,可以通过以下命令实现。在这里,我将设置G1 GC为默认GC。
$ java -XX:+UseG1GC -XX:+PrintCommandLineFlags -version
For more details , please visit
https://javapapers.com/java/types-of-java-garbage-collectors/
https://alvinalexander.com/java/java-jvm-how-show-which-garbage-collector-running
从Java 9到Java 15,即使在Java 15上也默认使用G1GC。Java 15新增了两个新的垃圾回收器,一个是Oracle开发的ZGC,另一个是Red Hat实现的Shenandoah,两者均可用于生产环境,且于2020年9月发布。ZGC可在OPEN JDKhttps://wiki.openjdk.java.net/display/zgc/Main上使用。