반응형
자바 면접 질문에서 자주 등장하는 가비지 컬렉터에 대해서 간략하게 알아보겠습니다.
a) 가비지 컬렉터란?
가비지 컬렉터는 자바에 존재하는 자동 메모리 관리 기능입니다. C언어와 같은 언어는 메모리를 직접 할당/해제 해야하기 때문에 잘 활용하면 매우 좋겠지만 잘 모른다면 메모리 낭비가 될 수 있습니다. 자바에서 가비지 컬렉터는 자동 메모리 할당, 해제를 담당하고 있기 때문에 이를 편리하게 도와줍니다.
b) 장단점
장점
- 자동 메모리 관리
- 메모리 누수 방지
자동으로 메모리를 관리해주기 때문에 자동 메모리 관리와 이로 인한 메모리 누수 방지에 장점을 가지고 있습니다.
단점
- 성능 저하
- 예측 불가능한 지연
자동으로 해준다는건 그만큼 편하지만 가비지 컬렉터를 위한 자원이 소비된다는 것이기도 합니다. 또, 자동 관리이기 때문에 실시간 시스템에서 가비지 컬렉터로 인해 자원이 들어가면서 서비스에 영향을 줄 수도 있습니다.
가비지 컬렉터는 쉽게 생각하면 더러운 내 방을 치워주시는 어머니와 같다고 할 수 있습니다. 어떨 때는 편하지만 내가 원치않을 때(게임을 할 때) 자원이 할당되어 의자에서 일어나야 한다면 중요한 한타를 질 수도 있기 때문에 장, 단점이 명확합니다.
반응형
'자바&스프링' 카테고리의 다른 글
[자바] java 기본 타입와 wapper(래퍼) 클래스, 박싱과 언박싱 (0) | 2023.04.12 |
---|---|
[자바] java의 특징, 객체지향 언어의 특징 (0) | 2023.04.11 |
[자바] java에서 자주 쓰이는 문자열 함수 10가지 indexOf, substring, replace 등 (0) | 2023.04.08 |
[자바] java 람다식 작성하는 법 & 예제 (1) | 2022.12.19 |
[자바] java equals, == 의 차이 간단정리(+예제) (0) | 2022.12.17 |