Java
[Java] 가비지 컬렉터 (Garbage Collector)
jny0
2023. 3. 7. 21:19
가비지 컬렉터 (Garbage Collector)
가비지 컬렉터는 자동 메모리 관리 시스템이다.
C나 C++ 등에서는 메모리 관리를 직접 해야하지만, 자바에는 가비지 컬렉터가 존재해서 자동으로 객체의 메모리 점유를 자동으로 초기화해준다.
가비지 컬렉터가 하는 일
- 메모리 할당
- 사용 중인 메모리 인식
- 사용하지 않는 메모리 인식
프로그램에 의해 할당된 메모리가 더이상 인스턴스를 참조하지 않아 가비지(garbage) 상태가 되면 자동으로 메모리를 초기화해준다.
가비지 컬렉터의 특징
- 가비지 컬렉터 동작은 자바에 의해 자동 실행되고 어느 시점에 어디에서 시작할지에 따라 다르다.
- 가비지 컬렉터가 동작하면, 어플리케이션에 있는 모든 쓰레드들은 잠시 중단된다.
가비지 컬렉터의 한계
- 실행 시간에 작업을 하기 때문에 성능 하락을 피할 수 없다.
- 가비지 컬렉터는 더 이상 접근 불가능한 객체만 회수하기 떄문에 메모리 누수가 발생할 수 있다.
참고할만한 영상 - https://www.youtube.com/watch?v=24f2-eJAeII