Страницы

Поиск по вопросам

воскресенье, 15 марта 2020 г.

Как узнать используемую память

#java #intellij_idea


Как можно узнать сколько памяти занимает выполнение программы или класса в Intellij
Idea? 
    


Ответы

Ответ 1



Есть такой инструмент как jmap, выводящий гистограмму с показателями сколько памяти занимают объекты и т.п. Также, утилиту jstat можно использовать для сбора самых разнообразных статистических данных. Статистика jstat сортируется в "свойства", указанные первым параметром командной строки. Чтобы увидеть список свойств, нужно запустить jstat с параметром -options. В документации утилиты в JDK говорится, что именно показывает каждое из свойств, но большинство из них используется для сбора информации о работе сборщика мусора или его компонентов. Свойство -class показывает загруженные и выгруженные классы (что делает утилиту полезной для обнаружения утечек ClassLoader в пределах сервера приложений или вашего кода), а -compiler и -printcompilation предоставляют сведения о JIT-компиляторе Hotspot. По умолчанию jstat отображает информацию по состоянию на момент обращения. Если нужны регулярные снимки текущего состояния, укажите после -свойств интервалы в миллисекундах. jstat будет постоянно отображать снимки текущего состояния контролируемого процесса. Если нужно, чтобы jstat сделал лишь определенное количество снимков, укажите его за значением интервала/периода.

Ответ 2



Можете включить индекатор памяти в File | Settings | Appearance and Behavior | Appearance поставить галочку в Show Memory Indecator ссылка

Ответ 3



Можно запустить java с выводом данных gc, например -verbose:gc параметр, посмотреть что он будет выводить, там данных будет достаточно. Второй вариант, использовать jstat

Комментариев нет:

Отправить комментарий