我正在尝试调试服务。通常的过程是启动服务并将gdb附加到进程。但我想在服务仍在启动时调试代码。 gdb加载库需要一段时间,并且在我可以放置断点之前执行了所需的代码。知道怎么做吗?谢谢!
答案 0 :(得分:2)
我们假设您的服务名为“myservice.exe”
如果您可以使用代码实际运行的框,那么我将执行以下操作:
$ gdb myservice.exe
(gdb) break myclass:myfunction
(gdb) run
这应该可以满足您的需求。
注意:如果你不能直接运行gdb,那么在开始时(在要调试的部分之前)放置一个“sleep”语句1分钟 - 这应该允许你在启动敏感代码之前连接