我想在进程退出时转储进程的内存。我见过的所有解决方案都使用gcore
,gdb
甚至procdump for linux在执行过程中转储核心,而不是在终止时#
Procdump for windows有一个非常优雅的解决方案,即-t
将允许procdump在进程退出时创建转储。
我偶然发现ulimit -c unlimited
,但这又会为非优雅的出口产生转储。
我想要转储的过程可以是任何进程,而不是我的应用程序。
答案 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