问题标签 [memcheck]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
23976 浏览

c++ - 我应该担心“条件跳转或移动取决于未初始化的值”吗?

如果您使用过 Memcheck(来自 Valgrind),您可能会熟悉此消息...

条件跳转或移动取决于未初始化的值

我已经读过这个,当你使用一个未初始化的值时它就会发生。

这会起作用,因为s它是自动初始化的……所以如果是这样的话,而且它起作用了,为什么 Memcheck 告诉我它没有初始化?是否应该忽略该消息?

也许我误解了错误指向我的地方。从 Valgrind 手册中,实际的错误片段是......

但是,在我的代码中,我看不到类似的东西。然而,我注意到堆栈跟踪 Memcheck 顶部的函数显示我是一个虚函数;这可能与它有关吗?

更新1:

我查看了 GlutApplication.cpp:120,看起来未初始化的变量正在传递给该行的函数。简单的!

0 投票
3 回答
1822 浏览

valgrind - 如何在不通过 valgrind 命令选项启动的情况下对 Process 的每个实例进行 valgrind memcheck

如何在不通过 valgrind 命令选项启动的情况下对 Process 的每个实例进行 valgrind memcheck。

有没有办法将监视选项保存在进程中,而不是每次都使用 valgrind 命令启动进程?

在 Microsoft Application Verifier 中,如果指定要监视应用程序,则该应用程序的任意数量的实例都会受到监视,无论它是子进程还是以其他方式启动。

有什么想法可以在 Valgrind 中做同样的事情吗?

我已经尝试了 valgrind memcheck 的 --trace-children=yes 选项......但是我的应用程序 xyz 向另一个应用程序 zzz 发出信号,以启动我想分析的 xyz(进程)的新实例。在这种情况下,当 xyz 完成发送 zzz 信号时,valgrind 退出。它不会跟进 zzz 启动的进程。

谢谢,维杰

0 投票
2 回答
1449 浏览

c++ - Valgrind memcheck 编程启用

我不认为有一种方法可以像使用 callgrind 那样以编程方式启用/禁用 Valgrind memcheck?(启动/停止仪器)。

这很痛苦,速度慢得无法使用(如果您要测试的代码自动启动并且您只是让它运行,这没关系),但是如果不单击应用程序中的几个按钮,我实际上无法进入重要的代码,它被呈现完全没有反应。(我的代码是另一个应用程序的插件)

谢谢

0 投票
7 回答
3498 浏览

c - Valgrind 声称有未释放的内存。这很糟糕吗?

Valgrind 为我的代码提供了以下泄漏摘要。但是,我已经释放了所有 malloc 的内存。这是一件坏事,还是正常的?我的程序在c中。

==3513== 泄漏摘要:

==3513== 肯定丢失:0 个块中的 0 个字节。

==3513== 可能丢失:0 个块中的 0 个字节。

==3513== 仍然可达:1 个块中的 568 个字节。

==3513== 抑制:0 个块中的 0 个字节。

0 投票
3 回答
1780 浏览

c++ - 如何合并来自同一进程的多次运行的 Valgrind memcheck 报告?

我有一组每晚运行的验收测试。我想使用 valgrind 自动检查我的代码中的内存泄漏,作为手动检查泄漏的额外保障。更新我的脚本以在 valgrind 下运行我的进程是微不足道的,但是,每个测试都会启动和停止许多进程,并且大约有 15000 个测试用例,所以我最终会得到数千个单独的报告。

是否有能够合并这些报告的工具?我见过 valkyrie,但根据文档,他们不支持 valgrind 3.5

0 投票
1 回答
589 浏览

c - 用valgrind只分析一些函数和子函数

我想调试一个“大”C 代码,并使用 valgrind,尤其是 memcheck 工具。输出很长,由于程序的大小,我只想重点介绍程序的一些功能和相关子功能。在 valgrind 中是否可以仅分析某些函数和子函数(直到某个深度级别)?

谢谢

0 投票
2 回答
220 浏览

java - Cuda-memcheck 和 JOCL,java 可执行文件可以使用它吗?(OpenCL)

我喜欢 JOCL,OpenCL 的 Java 绑定。我想在 Java 的可执行文件上运行 Cuda-memcheck,但是每当我制作 Java 应用程序时,它们总是只是指向 Main-Class 的 JAR 文件。有没有办法像 C++ 那样创建一个 .exe 文件并将其提供给 Cuda-memcheck?

0 投票
1 回答
2878 浏览

valgrind - Valgrind 输出令人困惑

我在理解 Valgrind 输出时遇到了一些麻烦:

1> 在自动生成的 adb 文件中出现“大小为 4 的无效写入”,

并且 gnat_exit_status 定义如下:

2>“进程以信号 11 (SIGSEGV) 的默认操作终止”这是 valgrind 还是我的程序?我从 valgrind 获得了 139 的返回值,但是当自己运行 main 时,我得到 0,这正是我所期望的!

memcheck 的完整输出:

任何帮助表示赞赏:)

新创建

0 投票
1 回答
657 浏览

profile - 显示 Eclipse CDT 中使用的 Valgrind 命令行

我正在使用 valgrind 在 Eclipse CDT (Indigo) 中分析/memchecking 我的应用程序。

在 Eclipse 中使用 memcheck 对其进行分析后,我发现了两个“可能丢失”的文件(都来自我无法控制的库)。所以我想将它们添加到我的禁止列表中。

然后我在命令行中使用 valgrind 运行相同的二进制文件:

令我惊讶的是,这两个“可能丢失”的人没有出现。(如果它们出现,我可以将它们添加到我在 Eclipse 中的禁止列表中)

我想知道在 Eclipse 分析中将哪些选项传递给 valgrind。但是我不知道在 Eclipse 中进行分析时如何显示 valgrind 的命令行。

请帮帮我。谢谢。

彼得

0 投票
1 回答
1516 浏览

centos - Valgrind (memcheck) 不显示泄漏/错误摘要。帮助?

我输入 >>valgrind ./myprogramname --tools-memcheck --leak-check=yes

但是程序结束时没有打印出内存泄漏和错误的摘要。我正在运行 Centos 5.5,甚至升级到最新版本的 Valgrind 来尝试让它工作。在我打开泄漏检查选项之前,我已经看到它打印出问题摘要。有没有人遇到过这个问题?

我什至设置了 --leak-check-full 等等。就像 Valgrind 没有看到我正在设置的选项。