Java 8 용 기본 가비지 수집기
Java 8의 기본 가비지 수집기는 무엇입니까?
JMX Bean을 확인하면 새로운 세대의 경우 병렬 수집기이고 이전 세대의 경우 이전 직렬 수집기임을 알 수 있습니다.
기본 가비지 수집기 :
- 자바 7-병렬 GC
- 자바 8-병렬 GC
- 자바 9-G1 GC
- 자바 10-G1 GC
기본 가비지 수집기를 선택하는 것은 JVM 의 인체 공학적 프로세스 라고합니다 . 이 프로세스는 컴퓨터의 클래스에 따라 다릅니다.
- 2 개 이상의 물리적 프로세서와 2GB 이상의 물리적 메모리 (플랫폼에 관계없이)가있는 시스템으로 정의되는 서버급 시스템의 경우 기본 가비지 수집기는 병렬 수집기 (처리량 수집기라고도 함)입니다.
- Windows 또는 단일 프로세서 시스템에서 32 비트 플랫폼으로 정의 된 클라이언트 클래스 시스템의 경우 기본 가비지 수집기는 직렬 수집기입니다.
사실상 모든 머신이 2 개 이상의 CPU를 가지고 있기 때문에 머신은 사실상 JVM에서 항상 서버급으로 간주됩니다. 그렇기 때문에 병렬 수집기가 기본 가비지 수집기로 간주되는 많은 참조를 찾을 수 있습니다.
Java에는 4 가지 유형의 가비지 수집기 (버전 10까지)가 있지만 Java 11 안정 릴리스 이후에는 5 가지 유형이됩니다. 이것들은:-
- 직렬 가비지 수집기
S GC
- 병렬 가비지 수집기
P GC
- CMS 가비지 수집기
CMS GC
- G1 가비지 수집기-
G1 GC
- Z 가비지 수집기-
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
참고 URL : https://stackoverflow.com/questions/33206313/default-garbage-collector-for-java-8
'Program Tip' 카테고리의 다른 글
라디오 버튼의 색상은 어떻게 변경합니까? (0) | 2020.10.06 |
---|---|
DOM 컨테이너를 통해 Highcharts 차트에 액세스하려면 어떻게해야합니까? (0) | 2020.10.06 |
Xcode : 코드가 구문 색상을 잃습니다. (0) | 2020.10.06 |
UISegmentedControl에서 문자열 값 가져 오기 (0) | 2020.10.06 |
자바 스크립트 : 이미지 크기 가져 오기 (0) | 2020.10.06 |