调试内存分配

COM 提供了 IMallocSpy 接口,供开发人员用来调试其内存分配。 对于 IMalloc中的每个方法,IMallocSpy中有两类方法:“pre”方法和“post”方法。 开发人员实现并将其发布到系统后,系统会在调用相应的 IMalloc 方法之前,调用 IMallocSpy 的 "pre" 方法,从而有效地允许调试代码对内存分配作业进行监控,还会调用 "post" 方法来结束监控过程。

例如,当 COM 检测到下一次调用是调用 IMalloc::Alloc时,它会调用 IMallocSpy::PreAlloc,执行开发人员在 Alloc 执行期间所需的任何调试操作,然后,当 Alloc 调用返回时,调用 IMallocSpy::PostAlloc 释放间谍并将控制权返回到代码。

管理内存分配