Как профилировать запуск приложения с помощью visualvm
Насколько я могу судить, можно профилировать запущенное приложение с помощью VisualVM.
Кто-нибудь знает способ профилирования запуска и запуска Java-приложения с помощью VisualVM?
Я убежден, что должен быть какой-то способ, иначе это будет серьезный надзор.
Надеюсь, что я просто неправильно прочитал документацию.
Спасибо, стр.
Ответы
Ответ 1
Вы настраиваете профилирование с помощью параметра командной строки `-Xrunjdwp '? Если это так, этот параметр имеет параметр "suspend" для этой цели:
Истинно, если целевая ВМ должна быть приостановлена непосредственно перед загрузкой основного класса; false в противном случае.
Пример из моей собственной конфигурации:
-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n
Я использую это с профилировщиком YourKit, но я думаю, что принцип тот же.
Ответ 2
Используйте средство запуска eclipse и установите точку останова в соответствующем месте основного метода.
Затем, начните в режиме отладки, включите профилирование в visualVM, а затем возобновите использование eclipse.
Это не будет профилировать загрузку классов и прочее, но для меня это достаточно хорошо.
Ответ 3
Я нашел Startup Profiler полезным:
Плагин запуска Profiler для VisualVM 1.3.6 позволяет использовать инструменты профилирование локальных приложений Java 5+ из их запуска. Это также полезно при профилировании коротких рабочих процессов.
Ответ 4
Обе распространенные среды разработки Java (NetBeans/Eclipse) поддерживают выполнение приложения непосредственно с подключенным VisualVM. В случае Eclipse вы должны установить плагин . В случае NetBeans поддержка уже включена в AFAIK.
Даже если у вас нет источников, вы все равно можете запускать файлы JAR через обе среды и, следовательно, запускать приложение, связанное с VisualVM.