在Linux中为C++进程获取内存转储的最好的命令行界面工具是什么。我有一个程序可以监控Linux上运行的不同进程的内存使用情况。对于基于Java的进程,我使用jstack和Jmap来获取线程和堆转储。但是,对于基于C++的进程,有没有好的CLI工具可以接受类似的转储?如果是,我们如何使用它们,一旦进行了转储,如何分析转储?
任何人都将不胜感激。
发布于 2015-08-26 15:07:37
我推荐使用gcore,它是一个开源的可执行文件,可以转储到远程进程。为了实现一致性,目标进程在收集内存时暂停,之后恢复。
使用信息可在以下链接中找到:
gsp.com/cgi-bin/man.cgi?section=1&topic=gcore另一种选择是通过gcc,通过将进程附加到gcc实例化并键入“gcore”命令,然后分离它。
$ gdb --pid=123
(gdb) gcore
Saved corefile core.123
(gdb) detachhttps://stackoverflow.com/questions/32218522
复制相似问题