jvisualvm: застрял на экране «Загрузка дампа кучи»

Я использую jdk64, а моя версия Java — «1.6.0_24». Мой tomcat работает с -Xmx7196m, а jvisualvm работает с -J-Xms2048m -J-Xmx3072m. Я сделал дамп кучи моего java-процесса tomcat, и размер моего файла .hprof составляет около 5,5 ГБ. Когда я пытаюсь открыть этот дамп кучи, он просто застревает на экране Loading Heap Dump....

Я также посмотрел на потребление кучи VisualVM, когда он пытается открыть дамп кучи, но это составляет всего около 500 МБ.

ПРИМЕЧАНИЕ. Я просмотрел jvisualvm: застрял на экране «Загрузка дампа кучи», но он отличается и не касается моего вопроса.


person Kuldeep Jain    schedule 11.03.2014    source источник
comment
Это довольно большой файл. Как долго вы ждали, пока он загрузит дамп, и была ли в это время какая-либо активность диска / процессора?   -  person Jason C    schedule 11.03.2014
comment
Я ждал почти 20 минут или больше. Активность процессора минимальна.   -  person Kuldeep Jain    schedule 11.03.2014


Ответы (5)


Эти симптомы также возникали, когда я пытался загрузить большой дамп кучи и имел мало места на диске (я полагаю, для временного использования файла визуальной виртуальной машиной), работающей на Mac. После того, как я освободил место на диске, файл загрузился.

person Ashley    schedule 07.12.2015
comment
Исправил мою проблему, спасибо - person Urbanleg; 22.12.2016

Я столкнулся с похожей загвоздкой, но понял, что было исключение; это может быть трудно заметить:

введите здесь описание изображения

Я не знаю, всегда ли он будет отображать такую ​​​​ошибку (я использую v1.3.9).

person davidinjc    schedule 30.11.2016

Я также заметил, что если у jvisualvm нет разрешения на чтение файла, то нет обратной связи, указывающей на проблему. (Ява 7)

person user186353    schedule 26.04.2018
comment
то же самое на visualvm 1.4.4 на java 8. jhat дает правильную ошибку - person Jayen; 07.10.2019

Вы можете попробовать несколько вещей:

  1. Java VisualVM в комплекте с JDK 1.6.0_24 существует уже несколько лет. Попробуйте использовать последнюю версию с https://visualvm.github.io.
  2. VisualVM использует файлы с отображением памяти, поэтому вам не нужно запускать его с кучей 3G. Я бы начал с кучи 1G. Сколько свободной памяти есть у вашей ОС, когда вы пытаетесь открыть дамп кучи?
  3. В правом углу VisualVM должен быть индикатор выполнения, который покажет вам ход загрузки кучи. Это должно дать вам представление о том, сколько времени это может занять.
person Tomas Hurka    schedule 27.03.2014
comment
Также проверьте, можете ли вы открыть файл hprof. У меня возникла проблема с разрешениями после копирования с сервера на мой ноутбук. Обработка ошибок Visualvm ужасна, она никогда ничего не говорит. - person rustyx; 09.10.2015
comment
Эта ссылка не работает, есть альтернатива? - person Urosh T.; 12.02.2020

Если открытый файл не считается действительным дампом кучи, JvisualVM также застрянет на этом экране.

При открытии того же (недопустимого) файла на MAT (из Eclipse) возникает ошибка:

Ошибка при открытии дампа кучи «heap.hprof». Дополнительные сведения см. в журнале ошибок.

Не дамп кучи HPROF (java.io.IOException)

Не дамп кучи HPROF

person Dherik    schedule 14.01.2019