在一般我看到这是在后台运行并使用命令pid启动dbx上该进程的进程的dbx -a <pid>

我同样可以怎么使用做GDB?

有帮助吗?

解决方案

有两种方式。

在命令行,包括PID作为可执行文件名称后的参数:

gdb /path/to/prog PID

从GDB内,可以使用附加命令:

gdb /path/to/prog
gdb> attach PID

在命令行上指定更加简洁,有轻微的风险,如果您有有一个名字是一样的PID核心文件(即,PID 2345,核心文件必须是命名为“2345”),那么GDB将打开核心文件。诚然,这种情况发生的几率是微乎其微。

其他提示

在除了前面的,可以直接使用

gdb -p <pid>

从GDB手册页:

您可以,而是指定一个进程ID作为第二个参数,如果你想调试一个正在运行的进程:

gdb program 1234
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top