0

Я хочу проанализировать использование памяти довольно огромного процесса Java VM.Распределение дискового пространства между анализатором памяти и диспетчером задач

Одна вещь, которую я понял при запуске инструмента анализа памяти Eclipse - это огромное расхождение между предполагаемой выделенной памятью: Task Task Task/CMD Tasklist показывает около 5,5 ГБ, в то время как анализатор памяти показывает только 1,1 ГБ. Что вызывает эту разницу?

ответ

1

Что Eclipse Memory Analyzer (MAT) видит и отчеты являются размером Java кучи, то есть объект графа, который сделал из Object экземпляров. То, что операционная система видит и сообщает, - это размер области в ОЗУ. JVM запросила у ОС хранить кучу Java (и ее внутренние структуры данных). Эта память обычно не полностью заполнена live Java объекты; некоторые объекты могут уже быть мертвыми (и не видны MAT), но еще не собраны, и сборщик мусора требует пространства для перемещения объектов.

Надеюсь, что это объясняет основы (есть больше деталей для управления памятью JVM и OS).

 Смежные вопросы

  • Нет связанных вопросов^_^