0
当运行valgrind与--leak-check=full
时,生成的报告包含有关内存“可能丢失”的信息。Valgrind可能丢失内存
valgrind手册中有一些相关信息,以及一些示例报告。
http://valgrind.org/docs/manual/mc-manual.html
LEAK SUMMARY:
definitely lost: 4 bytes in 1 blocks
indirectly lost: 0 bytes in 0 blocks
possibly lost: 0 bytes in 0 blocks
still reachable: 95 bytes in 6 blocks
of which reachable via heuristic:
stdstring : 56 bytes in 2 blocks
length64 : 16 bytes in 1 blocks
newarray : 7 bytes in 1 blocks
multipleinheritance: 8 bytes in 1 blocks
suppressed: 0 bytes in 0 blocks
在我自己的系统,我的valgrind执行我的多线程测试二进制文件时得到充足的“可能”失去的记忆的。
这究竟意味着valgrind会将内存报告为“可能丢失”?它在这个特定的执行过程中是失败了还是不是?在我看来,内存泄漏应该比“可能丢失”更加黑白。
我认为你链接的文档解释了什么被认为是“可能丢失”的块,以及为什么报告通常不会显示黑白结果。 – VTT