У меня есть приложение Java, и я хочу отслеживать его с помощью Java VisualVM (jvisualvm
).Отсутствие Java VisualVM объектов
Однако в окне VisualVM можно увидеть очень мало данных. Кроме того, я не могу взять кучу кучи.
Вот скриншот того, что он выглядит, с другой тест-приложение, которое я написал:
Я могу контролировать использование памяти, классы загружаются и нити. Отвалы кучи, выполнение GC, а также выборки отключены.
Я попытался добавить -Dcom.sun.management.jxmremote
в аргументы VM, как описано here. Это отображается в окне «Сведения об установке». Однако он не появляется в аргументах процесса Java. (Должен ли?)
Я также попытался нажать на кнопку в моем тестовом приложении, пока OutOfMemoryError
не произошло. Нет свалки кучи; это не странно, так как куча дампа на OOME отключена.
Что мне делать, чтобы решить эту проблему?
Вы можете взять кучу кучи в визуальной виртуальной машине. – assylias
Я говорю о том, что работает кнопка «Куча дампа». Обратите внимание, однако, что для больших куч (скажем> 500 МБ/1 ГБ) потребуется некоторое время. Вы можете попробовать его с небольшой кучей, чтобы подтвердить, что она работает. – assylias
@assylias Как вы можете видеть на картинке, кнопка отключена, greyed out, not enabled, что вы хотите назвать. Вы даже не можете щелкнуть по нему, так что я не понимаю, как он работает. – Pietu1998