GC란? JVM의 Heap 영역에서 사용하지 않는 객체를 삭제하는 프로세스를 말하고 GC(Garbage Collection)는 어떤 객체에 유효한 참조가 존재한다면 Reachable 그렇지 않으면 Unreachable 이라고한다. 자바는 실행될때 자바 자체 운영체제에서 돌아가는데 그게 바로 자바 가상머신JVM이고 이때 사용되는 객체를 자동으로 관리해 주는 기능이 가비지 컬렉션이다. 객체는 JVM Heap 영역에 저장되며 크게 세 영역으로 나눠져 있다. Heap 영역이란? Heap 영역에는 주로 긴 생명주기를 가지는 데이터들이 저장된다. (대부분의 오브젝트는 크기가 크고, 서로 다른 코드블럭에서 공유되는 경우가 많다) 애플리케이션의 모든 메모리 중 stack 에 있는 데이터를 제외한 부분이라고 보면 된다...