인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

YS님의 프로필 이미지
YS

작성한 질문수

더 자바, 코드를 조작하는 다양한 방법

자바, JVM, JDK 그리고 JRE

runtime constant pool 에 대해 질문드립니다!

작성

·

329

0

1. Integer autoboxing 할 때, constant byte code 가 어떻게 되는 지 궁금해서 명령어 찾아봐서 한번 출력해보았습니다!

근데 상수 값이 안나오는걸 확인해서 stackoverflow에 찾아보니

작은 값에 대해서는 특정 instruction을 사용해서 관리한다고 해서 어느정도 납득이 됐었는데,

#10을 보시면 Integer가 하나만 출력되있더라구요

이게 Integer를 사용할떄 -127~127캐싱하는 것때문에 한번만 선언되나 해봐서 다음과 같이 해봤더니 똑같이 출력되었는데,

클레스 정보를 한번만 할당해서 메모리 효율을 높이기 위함이라고 생각하면 될까요?!

2. 문득 constant pool 에 대한 메모리 관리에 대해서도 궁금해 졌는데, 사용하지 않는 상수에 대해서 runtime constant pool 도 메모리 해지가 일어나나요? 
좀 찾아본 결과로는 jit 에 의해서 사용하지 않는 primitive 나 local변수가 제거된다는데 맞는 정보일까요

답변 1

0

백기선님의 프로필 이미지
백기선
지식공유자

이미지가 보이지 않네요. 어떤 코드를 작성해서 어떤 바이트 코드를 보신것인지 다시 올려 주실 수 있을까요?

YS님의 프로필 이미지
YS

작성한 질문수

질문하기