
가비지 컬렉터(GC)의 Roots
·
💻 Dev/Java & OOP
자바에서 가비지 컬렉터(GC)의 GC Roots는 힙 메모리에서 객체를 도달 가능한 상태로 유지하는 시작 지점이다. GC는 메모리에서 더 이상 사용되지 않는 객체를 식별하고(Mark) 회수하는 작업(Sweep)을 수행하는데, 이때 어떤 객체가 사용 중인지 판단하기 위해 GC Roots에서 시작하여 도달할 수 있는 객체를 활성객체로 간주한다. GC Roots로 간주되는 객체들어떤 게 Roots다! 라고 딱 정해진 건 없지만 일반적으로 다음과 같은 객체들이 GC Roots로 간주된다. 1. 클래스(Class)JVM의 시스템 클래스 로더에 의해 로드된 클래스는 메서드 영역(Method Area)에 저장되며, 클래스의 정적 필드와 메서드는 프로그램 전반에서 전역적으로 접근 가능하다.이러한 정적 필드가 참조하는..