2010-03-07 3 views
0

Меня интересует профилировщик, способный подключиться к службе .NET Windows, которая запускается при запуске Windows. Я пробовал dotTrace, YourKit и профилировщики AutomatedQA без везения. Все они показывают, что службы Windows затенены и поэтому я не могу профилировать мою службу. Может ли кто-нибудь предложить рабочий профайлер?Профилирование службы Windows, которая запускается при запуске

ответ

1

MemProfiler поддержка для присоединения к процессу и услугам профиля. Кроме того, вы можете фактически импортировать дампы сбоев Windows, которые могут быть полезны, если вы получаете исключения из памяти.

Другим способом для этого является вызов API-интерфейса профилировщика из кода. (Предположим, что ваш профилировщик поддерживает это)

1

dot trace имеет api для профилирования. Лучше всего было бы назвать api из вашего кода. Версия EAP (dot trace 4.0), похоже, позволяет мне выбрать запущенный сервис, но я не уверен, что он запускает новый экземпляр или нет.

0

Можно ли запустить службу Windows в среде Visual Studio или какой-либо IDE с помощью кнопки «Пауза»? Если да, то this technique расскажет, что он делает, и где вы можете плодотворно его оптимизировать. (Он работает в любой среде, а не только в Linux.)

0

См. my suggestion относительно того, как вы можете добавить переключатель -foreground в сервис, чтобы упростить его запуск в виде обычной программы, что упрощает настройку и отладку , Или, альтернативно, добавьте некоторый код при запуске своей службы, чтобы заняться оживлением до тех пор, пока не будет выполнено какое-либо условие (например, файл существует или задан параметр реестра), что должно дать вам столько времени, сколько необходимо для присоединения профилировщика.

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