gpt4 book ai didi

c++ - 使用 AppVerifier 进行内存泄漏跟踪

转载 作者:太空狗 更新时间:2023-10-29 21:07:25 26 4
gpt4 key购买 nike

我有一个 C++ 应用程序有一些最小的泄漏,我想修复它们。我正在使用 AppVerifier 转储泄漏的对象,我可以获得分配内存的地址和前几个字节。

不幸的是,那些第一个字节和原始地址不足以精确定位分配堆栈跟踪,是否有一种方法可以获取完整的分配数据转储,并找到正在分配内存的堆栈?

我可以通过泄漏编号放置 _CrtSetBreakAlloc,但不幸的是它是一个线程应用程序,这些数字上下 float 。

有人建议我可以尝试什么吗?

最佳答案

使用 gflags 实用程序,您可以启用存储调用堆栈信息 (gflags +ust)。但是,您的应用程序现在运行速度会变慢并占用更多内存。

旁注:老实说,我从来没有让所有这些 Microsoft 实用程序(C-RunTime、Gflags、UMDH、AppVerifier、LeakDiag 中的泄漏跟踪)完全按照我的要求进行。最后,我简单地编写了自己的内存分配器,我可以在其中添加任何我想要的跟踪(调用堆栈、红色区域标记、延迟释放、一致性检查……)。

关于c++ - 使用 AppVerifier 进行内存泄漏跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5078183/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com