2011-03-17 19 views
3

我調試了很多隊列的複雜程序,每個隊列都有一個相對較短的超時時間集。 我無法在gdb的'手動'命令行模式下調試可靠,因爲當我輸入緩慢的命令時會觸發超時。gdb命令文件腳本:等待斷點支持?

我不喜歡延長所有隊列超時的想法,因爲這會讓事情變得非常混亂。 (這聽起來像設計本身是有爭議的,我知道...)

我真的很想使用gdb的腳本功能,但我還沒有找到一個很好的教程。

誰能告訴我,如果這是可能的GDB「命令文件」腳本:

  • 初始化一些事情(容易)
  • 設置斷點
  • 運行PROGRAMM
  • 有下一旦斷點執行的腳本命令被擊中

所以基本上我的問題是:我可以等待斷點GDB內命令文件腳本?

回答

3

回答我自己的問題:我用鉤子成功了。我的命令文件如下所示:

[initialization code] 

define hook-stop 
[commands to be executed at breakpoint] 
end 

set breakpoint pending on 
b my_breakpoint_function 
r