Java Hotspot Garbage Collection


Java Hotspot Garbage Collection

명시적 vs 자동적인 메모리 관리 메모리 관리는 더 이상 사용하지 않는 객체에 할당된 메모리를 확인하고, 다른 객체가 사용할 수 있도록 메모리를 회수하는 일련의 과정을 말한다. 메모리 관리는 개발자가 명시적으로 처리하는 경우와 머신에서 자동으로 처리하는 경우가 있다. 개발자가 명시적으로 처리하는 경우에는 예기치 못한 오류와 복잡한 로직에 의해 개발 및 수정하는 데에 많은 리소스가 사용된다. 명시적 메모리 관리에서 문제점으로는 복잡한 참조(dangling references)와 메모리 누수(space leak)가 있다. - 참조 : 메모리를 해제했는데 참조자가 호출하는 경우, 오류 혹은 예기치 못한 상황이 발생한다. - 누수 : 메모리를 모두 해제하지 않는 경우 (예, linked list에서 제일 처음 엘리먼트만 제거) 그래서 최근 OOP에서는 명시적 메모리 관리보다는 Garbage Collector 라는 프로그램에 의해 자동적으로 메모리 관리를 하는 추세이다. 이는 인터페이스의 추...



원문링크 : Java Hotspot Garbage Collection