c - 使用 valgrind 找出对象如何仍可访问

标签 c memory-leaks valgrind

我使用 valgrind 进行内存泄漏检测。有一些代码我预计会产生内存泄漏,但 valgrind 没有检测到它。现在我想知道以什么方式仍然可以访问该对象(在这种情况下这将是一个问题)。 valgrind 可以输出这些引用吗?

最佳答案

升级到(尚未发布)3.8.0 SVN 版本的 Valgrind。 然后,您可以使用以下 gdbserver 监控命令:

  block_list <loss_record_nr>
        after a leak search, shows the list of blocks of <loss_record_nr>
  who_points_at <addr> [<len>]
        shows places pointing inside <len> (default 1) bytes at <addr>
        (with len 1, only shows "start pointers" pointing exactly to <addr>,
         with len > 1, will also show "interior pointers")

关于c - 使用 valgrind 找出对象如何仍可访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10330583/

相关文章:

c - C 字符串中的特殊字符

c - 用空格和分号解析 CSV

C:内存泄漏实现一个简单的链表

Linux/C : how to trace the accesses on a number of variables

C中的打印函数mutex无法正常工作

c - 当我使用函数 isdigit() 检查两个整数,第一个 = 1,第二个 = 2 时,它给了我错误的结果

javascript - react setTimeout - 内存泄漏

C 无锁队列内存管理

memory-management - 在 Solaris 上定位错误的内存访问

C:尝试将字符串文字 "abc"分配给大小为 3 的数组,valgrind 检测到错误