Вопрос

У меня есть некоторый Java-код, который выбрасывает исключения из памяти после запуска в течение некоторого времени.Я исследовал профилировщик netbeans, и когда я выполняю одну конкретную операцию, показатель выживших поколений повышается.Однако, когда я сбрасываю статус программы (не убиваю ее), показатель выживших поколений не уменьшается.

Почему показатель выживших поколений не уменьшается?

Это было полезно?

Другие советы

Запустите его под управлением версии 1.6 и используйте Java VisualVM (jvisualvm).

Выберите нужный процесс, щелкните правой кнопкой мыши и выберите "Дамп кучи".

Дайте ему поработать некоторое время и сделайте еще один дамп кучи.

Затем используйте Файл > Сравнить моментальные снимки памяти, чтобы сравнить два дампа.

Здесь у меня та же проблема, но только в том случае, если я профилирую тест JUnit - выжившие поколения растут линейно.Когда я запускаю тот же код в методе main, код ведет себя так, как ожидалось.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top