가비지 컬렉션

프로그램이 동적으로 할당했던 메모리 영역 중 필요 없는 영역을 해제하는 메모리 관리 기법.

가비지 컬렉션이 동작하는 기준은 언어와 구현마다 다른데, 아래와 같은 케이스가 있다.

  • 레퍼런스 카운트가 0인 객체(CPython)
  • 순환 참조 발생(CPython)
  • 프로그램 코드에서 더이상 접근할 수 없는 객체(Java)
  • 힙 메모리 부족
  • 주기적 실행
  • 개발자의 명시적 요청

refs