
1. 힙 객체 헤더의 비효율과 이를 줄이기 위한 새로운 자바 객체 헤더(New Java Object Header: Compact Object Headers)[ 힙 객체 헤더의 비효율성 ]앞서 설명하였듯 자바에서 객체의 크기를 구하려면 기본적으로 객체의 헤더 크기에 변수의 크기(원시 타입인 경우) 또는 참조의 크기(참조 타입인 경우)를 더해주어야 한다. 그리고 만약 더해진 값이 8의 배수가 아니라면, 별도의 패딩 바이트를 더하여 객체의 크기가 항상 8의 배수가 되도록 보정하고 있다. Klass 포인터 압축 유무 혹은 최대 힙의 크기 등에 따라 실제 사용되는 바이트의 수가 달라질 수 있는데, 64비트 JVM을 기준으로 이를 정리하면 다음과 같다.상태마크 워드의 크기클래스 워드의 크기클래스 포인터 비압축(no..
Java & Kotlin
2025. 10. 14. 10:00