Я могу генерировать файл HPROF по желанию?

У меня есть процесс Java, который действует сомнительно. Я хотел бы видеть то, что использует различные аналитические инструменты HPROF.

Как я генерирую тот на лету?

31
задан Nick Stinemates 26 February 2010 в 19:58
поделиться

3 ответа

Вы должны запустить Java-процесс с правильными аргументами, , которые немного различаются в зависимости от версии JVM. Затем отправьте процессу сигнал QUIT для создания нового файла.

Выходные данные обычно генерируются при выходе из виртуальной машины, хотя это можно отключить, установив для параметра «дамп при выходе» значение «n» (doe = n). Кроме того, профиль создается при нажатии Ctrl- \ или Ctrl-Break (в зависимости от платформы). В ОС Solaris и Linux профиль также создается при получении сигнала QUIT (kill -QUIT pid). Если Ctrl- \ или Ctrl-Break нажимается несколько раз, для одного файла создается несколько профилей.

7
ответ дан 27 November 2019 в 22:11
поделиться

VisualVM может помочь вам разобраться в том, что делает ваш процесс, включая возможность произвольного принудительного дамп кучи запущенного процесса.

0
ответ дан 27 November 2019 в 22:11
поделиться

Да. Вы можете сгенерировать файл hprof (содержащий информацию об использовании памяти кучи) на лету с помощью инструмента jmap, который поставляется с Java VM от Sun:

jmap -dump: file =

52
ответ дан 27 November 2019 в 22:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: