
Garbage Collection(가비지 컬렉션)
·
👽 Languages/☕️ Java
Garbage Collection (GC) 이란? 프로그램을 개발하다보면 유효하지 않은 메모리, 가비지가 발생한다. 프로그램이 동적으로 할당한 메모리 영역 중 사용하지 않은 영역을 탐지하여 해지하는 기능이다. 여기서 동적으로 할당한 메모리 영역이란, JVM에서 Heap을 말한다. 사용하지 않은 영역이란 어떤 변수도 가리키지 않아 사용하지 않은 메모리를 말한다. GC가 언어와 동작하는 환경마다 다르지만, 특정 때에 특정 방식으로 필요없는 정보들을 삭제한다. 해제하는 것을 잊은 경우 메모리를 재사용할 수 없는데, (메모리를 차지하지만 사용되지는 않는다.) 이러한 것을 메모리 누수memory leak라고 한다. Managed Language ↔ Unmanaged Language C, C++ 등 Unmanage..