[Java] JVM과 Garbage Collection
Garbage Collection이란?JVM의 메모리 영역 중 Heap 영역에 동적으로 할당된 메모리 중 더 이상 사용되지 않는 메모리를 찾아 제거하는 과정이다.Heap 영역에 동적으로 할당되는 메모리들은 참조 타입의 변수의 데이터이다. Object 클래스를 상속받는 모든 아이들, 간단하게 객체라고 생각하면 된다.Garbage Collecion 동작 과정GC가 동작하면 메모리 영역을 스캔하며 각 객체가 Garbage Collection의 대상의 Reachable 여부를 판단한다.여기서 Reachable이란 객체가 참조되고 있는 상태이다.아무 곳에서도 참조하고 있지 않는 객체는 가비지 컬렉션의 대상인 Unreachable이고 스캔 이후 이러한 Unreachable 객체의 할당을 해제한다.이후 마지막으로 메..