@Vikkingg

Как узнать размер объектов в конкретной JVM?

Как узнать занимаемую память в конкретной реализации JVM. Меня интересуют примитивные типы, ссылки и объекты в 64 bit java oracle 8. Так же интересует сколько весит пустой объект(без полей).
  • Вопрос задан
  • 87 просмотров
Решения вопроса 1
xez
@xez Куратор тега Java
Senior Junior Roo
Пригласить эксперта
Ответы на вопрос 1
Vamp
@Vamp
Приблизительный размер объекта можно узнать при помощи Instrumentation API.

Либо снять head dump и проанализировать его. Например, в visualvm или mat:
Скриншот visualvm
60dc06703d1a0935508901.png

Что касается примитивных типов, то про них ходит много недопонимания в связи с тем, что в п. 2.3 jvms указаны конкретные размеры в битах, хотя с реальным размером занимаемой памяти это никак не связано. В эту ловушку попадаются даже опытные ребята. Более подробно можете прочитать в комментариях к другому ответу.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы