Debugging 是否可以在不停止调试对象的情况下向gdb发出命令?

Debugging 是否可以在不停止调试对象的情况下向gdb发出命令?,debugging,gdb,Debugging,Gdb,GameConverator可以在不停止其跟踪的程序的情况下不断更新其发现的变量。但正如我所知,您必须使用ptrace()来访问指定的程序,当您这样做时,它会自动停止调试对象。但不知何故,GameConverator在不中断调试的情况下完成了它的工作(并且它每半秒更新一次) 我认为如果游戏征服者能够做到这一点,gdb也应该能够做到。在继续调试之后,我尝试输入一些命令,gdb没有给出任何错误,也没有显示任何内容。我很困惑。您需要在gdb中使用异步模式。这里记录了这一点: 例如: (gdb) co

GameConverator可以在不停止其跟踪的程序的情况下不断更新其发现的变量。但正如我所知,您必须使用ptrace()来访问指定的程序,当您这样做时,它会自动停止调试对象。但不知何故,GameConverator在不中断调试的情况下完成了它的工作(并且它每半秒更新一次)


我认为如果游戏征服者能够做到这一点,gdb也应该能够做到。在继续调试之后,我尝试输入一些命令,gdb没有给出任何错误,也没有显示任何内容。我很困惑。

您需要在
gdb
中使用异步模式。这里记录了这一点:

例如:

(gdb) continue &
将继续您的程序,然后立即返回命令提示符,允许您在程序仍在运行时发出更多命令


如果要停止程序,需要使用
中断
命令,因为通常的
Ctrl
+
c
无法工作。

谢谢,我会尽快尝试,但如果调试对象只有一个线程怎么办?你提到的方法有效,但不是每次都可用。当异步模式不受支持时我该怎么办?Nvm,我知道了。您还应该在附加之前添加(&D)。再次感谢你。你不知道这对我有多重要。非常感谢。愿彩票在同一天连续两次击中你!