GC reachability

도달 가능성 기반 가비지 컬렉션 흐름

루트에서 참조 그래프를 따라갈 수 있는 객체만 살아 있고, 끊긴 객체는 수거 대상이 된다.

단계의미살아남는 조건누수 신호
Root전역, 현재 스택, 클로저 등 시작점root에서 참조됨전역 배열에 계속 보관
Mark참조를 따라 객체 표시연결된 객체는 reachableDOM과 JS 객체가 서로 붙잡음
Unreachable어디에서도 닿지 않음수거 후보타이머/리스너가 참조를 유지
Collect메모리 회수더 이상 사용할 수 없음명시적 delete만 믿음
Weak reference수거를 막지 않는 참조WeakMap, WeakSet키가 객체여야 함

메모리 누수는 객체 크기보다 루트에서 끊기지 않은 참조가 남아 있는지로 판단한다.