답변:
기본 가비지 수집기를 선택하는 것은 JVM 의 인체 공학적 프로세스 라고합니다 . 이 프로세스는 컴퓨터의 클래스에 따라 다릅니다.
사실상 모든 머신이 2 개 이상의 CPU를 가지고 있기 때문에 머신은 사실상 JVM에서 항상 서버급으로 간주됩니다. 그렇기 때문에 병렬 수집기가 기본 가비지 수집기로 간주되는 많은 참조를 찾을 수 있습니다.
Java에는 4 가지 유형의 가비지 수집기 (버전 10까지)가 있지만 Java 11 안정 릴리스 이후에는 5 가지 유형이됩니다. 이것들은:-
S GC
P GC
CMS GC
G1 GC
ZGC
자바에서 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