2011-04-25 106 views
1

我正在尝试调试服务。通常的过程是启动服务并将gdb附加到进程。但是我想在服务仍然启动时调试代码。 gdb加载库需要一段时间,并且必须的代码已经执行,然后才能放置断点。任何想法如何做到这一点?谢谢!服务启动时调试

回答

2

让我们假设你的服务被称为“myservice.exe”

如果能在包装盒上获取的代码实际上是运行在的话,我会做到以下几点:

$ gdb myservice.exe 
(gdb) break myclass:myfunction 
(gdb) run 

这应该得到你想要的。

注意:如果你不能直接运行gdb,那么在开始的时候(在要调试的部分之前)放置一个“睡眠”语句1分钟 - 应该允许你在开始敏感之前进行连接码。