- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用 _CrtSetBreakAlloc()
函数来跟踪我的 MFC 项目的 debugger
构建中的内存泄漏。 (Here's the code 来 self 之前的问题。)
只要 Allocation order number
保持不变,该技术就有效。但在许多情况下并非如此。例如,这是我现在收到的两份报告:
第一次运行:
Detected memory leaks!
Dumping objects ->
{222861} normal block at 0x000002BDF58347C0, 240 bytes long.
Data: <C : \ P r o g r > 43 00 3A 00 5C 00 50 00 72 00 6F 00 67 00 72 00
{222860} normal block at 0x000002BDEFBA52A0, 16 bytes long.
Data: < > 10 AF B7 EF BD 02 00 00 00 00 00 00 00 00 00 00
{222859} normal block at 0x000002BDEFB7AF10, 40 bytes long.
Data: < R G > A0 52 BA EF BD 02 00 00 C0 47 83 F5 BD 02 00 00
Object dump complete.
第二次运行:
Detected memory leaks!
Dumping objects ->
{222422} normal block at 0x00000123DDB67540, 224 bytes long.
Data: <C : \ P r o g r > 43 00 3A 00 5C 00 50 00 72 00 6F 00 67 00 72 00
{222419} normal block at 0x00000123DDBA9C50, 16 bytes long.
Data: < # > 80 16 B7 DD 23 01 00 00 00 00 00 00 00 00 00 00
{222418} normal block at 0x00000123DDB71680, 40 bytes long.
Data: <P # @u # > 50 9C BA DD 23 01 00 00 40 75 B6 DD 23 01 00 00
Object dump complete.
所以我想知道,是否有一个函数或一种方法可以重写 _CrtSetBreakAlloc
以使其在内存内容上触发断点?例如,在我的例子中,当内存中写入 Unicode-16 字符串 "C:\Progr"
时。
最佳答案
已经有一个_CrtSetAllocHook
。但这应该如何帮助呢?数据在分配后设置。所以当你要触发的数据写入分配的内存时,不会发生钩子(Hook)。
我看到的唯一方法是使用 _CrtDoForAllClientObjects
并搜索所有分配的 block 。
关于c++ - _CrtSetBreakAlloc 使用内存内容而不是分配号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54317518/
我正在使用 _CrtSetBreakAlloc()函数来跟踪我的 MFC 项目的 debugger 构建中的内存泄漏。 (Here's the code 来 self 之前的问题。) 只要 Alloc
我正在使用来自 的 Visual CRT 内存泄漏检测例程;当我打电话时_CrtDumpMemoryLeaks每次调用程序时都会报告一致的分配: {133} normal block at 0x04
当我的应用程序完成时,visual studio 中的调试构建打印出所有未分配的对象和未释放的分配序列号。然后通常我只是调用 _CrtSetBreakAlloc(x),其中“x”是分配序列号,并在分配
我是一名优秀的程序员,十分优秀!