我有一个服务器程序,没有非常干净/正常的关闭(一般不应该终止)。当跟踪内存泄漏时,我在valgrind下运行它,但最后必须通过信号(^ C)终止进程。一般情况下,当环境安静时,我会尝试终止进程,但仍然有些线程可能忙于处理作业,并且由它们保存的内存会导致错误警报。为了帮助进行这样的分析,valgrind中是否有任何方法(工具),以便在程序退出时(通过信号?)打印线程的回溯。
答案 0 :(得分:1)
我知道这很不方便,但是当你收到这个信号时,你能让你的程序转储核心,然后用gdb
诊断核心转储吗?
答案 1 :(得分:0)
不确定我完全理解你的问题,但你可以通过gdb打印所有pthreads的回溯:
thread apply all bt