退出linux时转储进程内存

时间:2018-03-08 10:40:42

标签: linux ulimit procdump gcore

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

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

我偶然发现ulimit -c unlimited,但这又会为非优雅的出口产生转储。

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

1 个答案:

答案 0 :(得分:1)

如果你想用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