我有一组单元测试,它们使用framewave library测试程序。
当我使用valgrind运行这些单元测试来检查代码是否导致内存问题时,会出现问题。看起来单元测试进入无限循环,因为它等待一些线程被连接(尽管我用fwSetNumThreads
禁用了线程)
有没有人遇到过类似的问题?如果是的话,你是怎么解决的?
第二个问题:对于多线程程序,我是否必须将一些参数传递给valgrind?
修改
我的valgrind的版本是:
valgrind --version
valgrind-3.4.1
这就是我在输出中发现的不断重复(我之前从未见过):
DWARF2 CFI reader: unhandled CFI instruction 0:10
DWARF2 CFI reader: unhandled CFI instruction 0:10
DWARF2 CFI reader: unhandled CFI instruction 0:10
DWARF2 CFI reader: unhandled CFI instruction 0:10
DWARF2 CFI reader: unhandled CFI instruction 0:10
DWARF2 CFI reader: unhandled CFI instruction 0:10
答案 0 :(得分:0)
这些错误实际上是valgrind中的错误导致的(我使用的valgrind的版本是3.4.1):
DWARF2 CFI阅读器:未处理的CFI指令0:10
http://valgrind.org/docs/manual/dist.news.html
Valgrind giving errors with getline()
https://bugs.kde.org/show_bug.cgi?id=197512
将valgrind更新到最新版本(编写本文时为3.6.1)修复了此错误。
How to suppress "DWARF2 CFI reader: unhandled CFI instruction" error in valgrind output?解释了这一点,但它只是告诉我们将valgrind更新为最新版本。