인프런 커뮤니티 질문&답변

웨이드님의 프로필 이미지

작성한 질문수

스프링 핵심 원리 - 기본편

애노테이션 @PostConstruct, @PreDestroy

질문 있습니다~!

해결된 질문

20.11.26 18:51 작성

·

574

21

안녕하세요. 영한님, 항상 좋은 강의 감사드립니다 :)

수업을 듣다가 몇가지 궁금한 점이 생겨 질문 드립니다.

1. 스프링 애플리케이션을 실행하면 스프링 컨테이너가 생성되고 bean이 생성될텐데, 스프링 컨테이너랑 bean은 모두 JVM의 heap 영역에 생성되는 건가요??

2. heap 영역에 생성된다면, GC의 대상이 될 수도 있는건가요??

답변 1

28

김영한님의 프로필 이미지
김영한
지식공유자

2020. 11. 26. 22:34

안녕하세요. 웨이드님 좋은 질문입니다.

네 맞습니다. 둘다 결국 객체이기 때문에 heap 영역에 생성됩니다. 그리고 당연히 GC의 대상이 될 수도 있습니다. 그런데 GC의 대상이 되려면 참조하는 포인터가 없어야 하는데, 싱글턴 빈은 스프링 컨테이너가 참조하고 있고, 스프링 컨테이너도 나의 애플리케이션을 포함한 어디선가 계속 참조하고 있기 때문에 종료직전까지는 사라지지 않습니다.

감사합니다.