Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试对消耗过多内存并被操作系统(FreeBSD)以 9 信号杀死的程序进行内存分析。这发生在某些特定数据上,因此在另一个(例如较小的)数据集上对其进行分析不会有太大帮助。当程序被杀死时 9 地块根本不会产生任何输出。在这种情况下可以做些什么来获得内存分析?
如果你有最新的 Valgrind 版本(>= 3.7.0),Valgrind 有一个嵌入式 gdbserver,因此它可以与 gdb 一起使用。
在您的应用程序开始在 Valgrind 下运行之前,您可以放置断点。当遇到断点时,GDB 监视器命令可用于调用 Valgrind 工具的特定功能。例如,使用 Massif,您可以触发生成报告。使用 Memcheck,您可以进行泄漏搜索,检查有效性位,...
也可以从 shell 命令行触发这些监控命令(使用 Valgrind vgdb 实用程序)