Java - нет трассировки стека - PullRequest
3 голосов
/ 27 апреля 2011

мое приложение потребляет 100% ресурсов процессора - из 200%. Когда я создаю дамп потока, вызывая Thread.getAllStackTraces() или kill -3, я вижу, что есть потоки, которые занимают много процессорного времени, но их трассировка стека недоступна. Они не отображаются при профилировании процессора.

Темы: HandshakeCompletedNotify-Thread, Keep-Alive-Timer и process reaper. Однако их следы стека недоступны.

Keep-Alive-Timer и HandshakeCompletedNotify-Thread не должны быть родными, насколько я понимаю. Кроме того, у нас нет специальных разрешений в файлах java.policy или java.security в jre.

Как я могу получить следы стека этих потоков, чтобы решить проблему высокой загрузки ЦП?

1 Ответ

0 голосов
/ 27 апреля 2011

Используйте инструмент профилирования, такой как visual vm

. Он поддерживает выборку ЦП и поддержку профилирования, чтобы показать, где используется ЦП.

...