Java 8のデフォルトのガベージコレクターは何ですか?
JMX Beanをチェックすると、JMX Beanが新しい世代のパラレルコレクターであり、古い世代の古いシリアルコレクターであることがわかります。
デフォルトのガベージコレクター:
(特に)デフォルトのガベージコレクターを選択することは、JVMの 人間工学 プロセスと呼ばれるものです。このプロセスは、マシンのクラスに依存します。
実質的にすべてのマシンには2つ以上のCPUがあるため、マシンは事実上常にJVMによってサーバークラスと見なされます。そのため、パラレルコレクターを既定のガベージコレクターと見なす多くの参照が見つかります。
Javaには4種類のガベージコレクター(バージョン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