본문 바로가기

gc2

[Java] GC 방식 JDK 5.0이상에서 지원하는 GC 방식에는 네가지가 있다. WAS나 자바 애플리케이션 수행시 옵션을 지정하여 선택할 수 있다. 4가지 GC(가비지 콜렉터) 방식 Serial GC (시리얼 콜렉터) Parallel GC (병렬 콜렉터) Parallel Compacting GC (Parallel Old GC, 병렬 컴팩팅 콜렉터) Concurrent Mark-Sweep GC (CMS 콜렉터) Garbage First GC (G1 GC) JVM GC 동작 순서 요약하면 GC 동작은 아래 3 STEP으로 나눠진다. Heap 영역에 존재하는 객체들에 대해 접근 가능한지 확인한다. GC Root에서 부터 시작하여 참조값을 따라가며 접근 가능한 객체들에 Mark하는 과정을 진행한다. Mark 되지 않은 객체 즉, .. 2021. 8. 25.
[Java] 가비지 컬렉션(Garbage Collection) C/C++ 프로그래밍을 할 때 메모리 누수(Memory Leak)를 막기 위해 객체를 생성한 후 사용자하지 않는 객체의 메모리를 프로그래머가 직접 해제 해주어야 했지만, JAVA에서는 JVM(Java Virtual Machine)이 구성된 JRE(Java Runtime Environment)가 제공되며, 그 구성 요소 중 하나인 Garbage Collection(이하 GC)이 자동으로 사용하지 않는 객체를 파괴한다. GC에 대해서 알아보기 전에 'stop-the-world'라는 용어를 알아야한다. 'stop-the-world'란, GC를 실행하기 위해 JVM이 애플리케이션 실행을 멈추는 것입니다. 어떤 GC 알고리즘을 사용하더라도 'stop-the-world'는 발생하게 되는데, 대개의 경우 GC 튜닝은.. 2021. 8. 11.