ЦП профиля VisualVM, но run () - методы мешают

Я профилирую большой сервер jboss с множеством классов. Когда я профилирую ЦП, результат всегда примерно такой: java.util.TimerThread.run() = 62% и java.util.concurrent.ThreadPoolExecutor$Worker.run() = 34,8%. При этих двух методах тысячи других методов имеют 0%. Я думаю, что это серьезная ошибка, потому что большинство этих методов выполняются в этих потоках. Но как я могу увидеть, какой из них... Функция ThreadDump для этого тоже бесполезна.


person MäxL    schedule 17.02.2012    source источник


Ответы (1)


Если вы не знаете, какая часть кода медленная, лучше начать с выборки ЦП. Как только вы лучше узнаете (на основе результатов выборки), что не так, вы можете профилировать только часть вашего сервера jboss. См. разделы Профилирование с помощью VisualVM, часть 1 и Профилирование с помощью VisualVM, часть 2, чтобы получить дополнительную информацию о профилировании и о том, как установить корни профилирования и инструментальный фильтр.

person Tomas Hurka    schedule 20.02.2012