#gdb
#gdb
Вопрос:
Я пытаюсь отладить службу. Обычная процедура заключается в запуске службы и подключении gdb к процессу. Но я хочу отлаживать код, когда служба все еще запускается. gdb требуется некоторое время для загрузки библиотек, и требуемый код выполнен, прежде чем я смогу установить точки останова. Есть идеи, как это сделать? Спасибо!
Ответ №1:
Давайте предположим, что ваша служба вызвана «myservice.exe «
Если вы можете перейти к окну, в котором фактически выполняется код, тогда я бы сделал следующее:
$ gdb myservice.exe
(gdb) break myclass:myfunction
(gdb) run
Это должно дать вам то, что вы хотите.
Примечание: если вы не можете запустить gdb напрямую, то поставьте инструкцию «sleep» на 1 минуту в самом начале (перед частью, которую вы хотите отладить) — это должно позволить вам подключиться до запуска конфиденциального кода.