Java: почему несколько объектов отображаются с выводом runhprof?

Меня интересовал вывод runhprof? Меня в основном беспокоит раздел памяти. Похоже, что есть несколько записей одного и того же класса. С чего бы это.

Есть ли способ заставить hprof печатать, сколько памяти занимает конкретный класс (экземпляры этого класса). Одно значение для каждого класса.

Кроме того, какие инструменты вы используете помимо «шляпы» для анализа вывода?

Я запустил команду java с аргументом jvm:

-Xrunhprof: куча = сайты, глубина = 4, формат = a, файл = prof/hprof_dump.txt

Вот краткий фрагмент вывода. Некоторые классы перечислены в выходных данных несколько раз.

SITES BEGIN (ordered by live bytes) Tue Jul 28 19:33:41 2009
          percent          live          alloc'ed  stack class
 rank   self  accum     bytes objs     bytes  objs trace name
    1 29.75% 29.75%    700080 43755 576000016 36000001 307483 java.lang.Double
      2  7.13% 36.88%    167840 5245    370432 11576 300993 clojure.lang.PersistentHashMap$LeafNode
        3  2.09% 38.98%     49296 2054     60048  2502 301295 clojure.lang.Symbol
        4  2.09% 41.07%     49200    3     49200     3 301071 char[]
        5  1.33% 42.40%     31344 1306     68088  2837 300998 clojure.lang.PersistentHashMap$BitmapIndexedNode
        6  1.10% 43.50%     25800  645     25800   645 301050 clojure.lang.Var
        7  1.05% 44.54%     24624    3     24624     3 301069 byte[]
        8  0.86% 45.40%     20184  841     49608  2067 301003 clojure.lang.PersistentHashMap$INode[]
        9  0.78% 46.18%     18304  572     58720  1835 301308 clojure.lang.PersistentList
       10  0.75% 46.93%     17568  549     17568   549 308832 java.lang.String[]
       11  0.70% 47.62%     16416    2     16416     2 301036 byte[]

person Berlin Brown    schedule 29.07.2009    source источник


Ответы (1)


Анализатор памяти Eclipse превосходен. Загружает файл дампа очень-очень быстро, создает множество хороших отчетов о дампе кучи, позволяет вам запрашивать дамп для объектов/классов, используя язык, подобный SQL. Любить это.

person matt b    schedule 29.07.2009
comment
Ага, только что запустил. Чертовски идеально. Спасибо. Работает также с дампами кучи начиная с версии 1.5. - person Berlin Brown; 29.07.2009