在退出 Linux 上转储进程内存



我想在进程退出时转储进程的内存。我见过的所有使用 gcore 的解决方案 gdb 甚至 procdump for linux 在执行过程中转储核心,而不是确切地在它终止时

Procdump for Windows对此有一个非常优雅的解决方案,即 -t将允许 procdump 在进程退出时创建转储。

我偶然发现了ulimit -c unlimited但这只会为非正常退出生成转储。

我想要转储的进程可以是任何进程,而不完全是我的应用程序。

如果你想

用gdb模仿这种行为:

Procdump for Windows 对此有一个非常优雅的解决方案,即 -t 将允许 procdump 在进程退出时创建转储。

首先,创建一个文件"mycommand.txt":

b exit
r
generate-core-file ./core.1
q

然后,从以下方法开始程序:

 gdb --command mycommand.txt yourprogram 

您的工作目录中将有一个名为 core.1 的文件。检查:

gdb yourprogram core.1

最新更新