一般情况下,我会看到正在后台运行的进程pid
,并使用命令dbx -a <pid>
同样如何使用gdb?
答案 0 :(得分:52)
除了以前你可以直接使用
gdb -p <pid>
答案 1 :(得分:36)
有两种方式。
从命令行,在可执行文件名后包含pid作为参数:
gdb /path/to/prog PID
在gdb中,您可以使用attach命令:
gdb /path/to/prog
gdb> attach PID
虽然命令行上的指定更简洁,但如果您的核心文件的名称与pid相同,则存在轻微风险(即对于pid 2345,核心文件必须是命名为“2345”)然后gdb将打开核心文件。不可否认,这种情况发生的可能性微乎其微。
答案 2 :(得分:3)
从gdb手册页:
如果要调试正在运行的进程,则可以将进程ID指定为第二个参数:
gdb program 1234