使用gdb,我需要continue在它之前和之后立即运行额外的命令.我以为我会像这样制作用户定义的命令:
define continue
pre_continue
continue
post_continue
end
Run Code Online (Sandbox Code Playgroud)
当然,这在无底的递归坑中失败了.有没有办法直接调用内置命令,绕过用户定义的命令?
BTW:我需要命名命令,continue以便我正在使用的gdb前端将调用我的用户定义函数.
您正在寻找用户定义的命令挂钩:
您可以定义钩子,这是一种特殊的用户定义命令.每当你运行命令
foo', if the user-defined commandhook-foo'存在时,它就会在该命令之前执行(没有参数).还可以定义一个挂钩,它在您执行的命令之后运行.无论何时运行命令
foo', if the user-defined commandhookpost-foo'存在,它都会在该命令之后执行(没有参数).对于相同的命令,执行后挂钩可以与预执行挂钩同时存在.
此解决方案应该适合您:
define hook-continue
pre_continue
end
define hookpost-continue
post_continue
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
303 次 |
| 最近记录: |