Replies: 2 comments
-
|
Beta Was this translation helpful? Give feedback.
0 replies
-
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Intro
GC = Garbage Collection = 가비지 컬렉션
C언어에서는 개발자가 직접 메모리를 해제해 주어야 하는 반면, Java에서는 JVM의 GC가 불필요한 메모리를
알아서 정리
해 준다.GC(Garbage Collection)란?
Heap 영역
이 GC의 대상이다.Heap 영역의 재활용이 필요할 때
수행될 수 있다.Major GC와 Minor GC
Young 영역
에 대한 GCOld 영역
에 대한 GCGC 동작 방식
우선 GC의 대상인 Heap 영역은, 아래의 2가지 전제를 기반으로 설계되었다.
{{ in progress }}
GC의 종류
Serial GC (-XX:+UseSerialGC)
단일 스레드
로 동작한다.Parallel GC (-XX:+UseParallelGC)
Minor GC
를멀티 스레드
로, 동시에 GC를 수행한다.CMS GC (-XX:+UseConcMarkSweepGC)
애플리케이션의 스레드와 GC 스레드가 동시에 실행
되어 stop-the-world 시간을 최대한 줄이기 위한 전략G1GC (-XX:+UseG1GC)
Region
이라는 새로운 개념 도입! 각 Region이 Eden/Survivor/Old 영역을 담당한다.ZGC (-XX:+UseZGC)
ZPage
라는 논리적인 단위로 메모리를 구분Small 영역
, 중간 크기 객체들이 할당되는Medium 영역
, 큰 객체들이 할당되는Large 영역
으로 나뉜다.Beta Was this translation helpful? Give feedback.
All reactions