Tooling Zaawansowany

Zmniejsz rozmiar nagłówka obiektu o połowę dla lepszej gęstości pamięci i użycia pamięci podręcznej.

✕ Java 8
// Default: 128-bit object header
// = 16 bytes overhead per object
// A boolean field object = 32 bytes!
// Mark word (64) + Klass pointer (64)
✓ Java 25
// -XX:+UseCompactObjectHeaders
// 64-bit object header
// = 8 bytes overhead per object
// 50% less header memory
// More objects fit in cache
Widzisz problem z tym kodem? Daj nam znać.
📦

O 50% mniejsze nagłówki

8 bajtów zamiast 16 na obiekt.

Lepsze użycie pamięci podręcznej

Więcej obiektów mieści się w liniach pamięci podręcznej CPU.

📊

Wyższa gęstość

Więcej obiektów w tym samym rozmiarze sterty.

Stare podejście
Nagłówki 128-bitowe
Nowoczesne podejście
Nagłówki 64-bitowe
Od JDK
25
Poziom trudności
Zaawansowany
Kompaktowe nagłówki obiektów
Dostępne

Sfinalizowane w JDK 25 LTS (JEP 519, wrzesień 2025)

Kompaktowe nagłówki obiektów redukują narzut na obiekt z 128 bitów do 64 bitów na platformach 64-bitowych. Oszczędza pamięć i poprawia wykorzystanie pamięci podręcznej, szczególnie dla aplikacji z wieloma małymi obiektami.