7得票1回答
如何排除某些子进程在valgrind下运行?

我正在Linux上运行一个守护进程,我想在valgrind下运行此守护进程以查找与内存相关的错误。由于它是守护进程,我需要使用--trace-children=yes选项,但是在其生命周期中稍后会生成许多进程,我不希望它们在valgrind下运行。是否有一种方法可以排除某些子进程在valgri...

13得票4回答
我可以让valgrind忽略glibc库吗?

有没有可能告诉valgrind忽略一些库?尤其是glibc库。 实际问题: 我有一些代码在正常执行时运行良好,没有泄漏等问题。 但是当我试图通过valgrind运行它时,程序会出现核心转储并重新启动或停止。 核心通常指向glibc函数(通常是fseek、mutex等)。 我明白可能存在与...

10得票2回答
限制Valgrind只针对特定函数进行检测

我有一个庞大的程序要运行,使用valgrind需要花费数小时的时间。我听说有一种方法可以只对程序中特定的函数调用valgrind,而其余部分会正常执行(不使用valgrind环境)。 有人能帮我解决吗?我在互联网上搜索了一下,但可能我找错了术语。

7得票2回答
Valgrind "Killed"信息

我正在运行一个程序,但是会出现“abort trap”错误(错误代码12)。为了调试这个错误,我正在运行valgrind,但每次运行它时,valgrind本身都会崩溃并显示“Killed”消息,除此之外没有其他任何信息(结尾消息堆摘要等不显示)。我在谷歌和SO上找不到任何关于此问题的信息,希望...

10得票3回答
理解Valgrind输出

我之前发过一篇帖子,询问如何检查内存泄漏等问题。我确实说过我对Linux终端不太熟悉,但有人告诉我使用Valgrind很容易。 我已经成功运行了它,但我不确定输出结果的意思。粗略地看,一切看起来都很好,但如果可能的话,我想请经验丰富的人确认一下。输出如下:^C==2420== ==2420==...

7得票4回答
无法确定竞态条件发生的位置

我正在使用Valgrind --tool=drd来检查使用Boost::thread的应用程序。 基本上,该应用程序通过套接字连接根据输入将一组“Book”值填充为“Kehai”值。 在单独的线程上,用户可以连接并获取发送给他们的书籍。 这很简单,所以我认为在序列化图书和清除图书数据的位置...

27得票2回答
解读Callgrind数据

我需要一个动态调用图来分析我的应用程序。我使用 valgrind 套件中的callgrind工具运行它,生成了callgrind.out.xxxxx文件。现在,我想要制作一个图形化的呈现这些数据。但是KCacheGrind并没有帮助我很多,因为它只画出了部分的图形(仅绘制了大约50个函数,而不...

20得票7回答
在valgrind下运行Python显示许多内存错误,这正常吗?

我尝试在我的Python C扩展中调试内存崩溃,并尝试在valgrind下运行脚本。我发现valgrind输出中有太多的“噪音”,即使我只运行了简单的命令:valgrind python -c "" Valgrind输出中充满了重复的信息,例如:==12317== Invalid read o...

7得票2回答
Valgrind显示printf的内存泄漏和未使用的块

#include <string.h> #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]){ char *str = malloc(sizeof(char)*5...

74得票3回答
PRE-2016年Valgrind:使用<iostream>的简单程序仍然可访问内存

编辑:我已经投票关闭此问题,因为它现在不正确。在2016年3月,Valgrind 增加了一个选项“--run-cxx-freeres = &lt;yes | no&gt;”(默认为 yes)。这将调用一个 libstdc++ 函数来释放用于像 iostream 这样的一次性分配。如果您正在使用...