CH16-2 · FLOW

GC와 메모리 압력 예제가 실행되는 순서

GC 루트에서 참조 경로 추적에서 시작해 할당률·생존률·정지 시간을 함께 관찰까지 값과 책임이 이동한다.

  1. 1
    GC 루트에서 참조 경로 추적

    실행 스레드 스택, static 필드, JNI 참조 등에서 이어진 객체는 회수되지 않습니다.

  2. 2
    도달하지 않는 객체만 회수 후보

    젊은 영역에서 자주 수집하고 오래 살아남은 객체를 이전해 전체 힙 작업을 줄입니다.

  3. 3
    할당률·생존률·정지 시간을 함께 관찰

    짧은 객체가 많아도 할당 속도가 지나치면 GC가 자주 일어납니다.

실행 순서 retained 목록이 배열을 계속 가리키는 동안 GC 대상이 아니며 clear 뒤에도 수집 시점은 JVM이 결정합니다.