【发布时间】:2015-01-06 20:07:30
【问题描述】:
我有大量内部指针的代码,我想使用 valgrind 来检测内存泄漏。不幸的是,这意味着我在“可能丢失”类别中得到了很多垃圾。
我在部分代码中使用了自定义内存分配器,它从 malloc 分配块,然后管理块本身。分配器使用正常的内部指针技巧 - 实际应用程序在块头之后接收指向块的内部指针。
因此,如果块在退出时由应用程序持有,则报告为“可能丢失”,因为应用程序持有指向该块的内部指针。但是,我知道标头大小,所以理论上可以推导出起始指针。
有没有办法告诉 valgrind 忽略距起始指针已知偏移量的内部指针,以便我可以检查应用程序中的泄漏?
【问题讨论】: