IMallocSpy::P reAlloc 方法 (objidl.h)
在调用 IMalloc::Alloc 之前执行所需的操作。
语法
SIZE_T PreAlloc(
[in] SIZE_T cbRequest
);
参数
[in] cbRequest
调用方传递给 Alloc 的分配请求中指定的字节数。
返回值
调用 Alloc 中指定的字节数,可以大于或等于 cbRequest 的值。
注解
PreAlloc 实现可以扩展和/或修改分配,以使用分配存储特定于调试的信息。
PreAlloc 可以通过返回 0 强制内存分配失败,从而允许测试以确保应用程序在所有情况下都能正常处理分配失败。 在这种情况下,不调用 IMallocSpy::P ostAlloc,Alloc 返回 NULL。 仅当 cbRequest 不等于 0 时,强制分配失败才有效。 如果 PreAlloc 通过返回 NULL 强制失败,则不调用 PostAlloc 。 但是, Alloc 遇到实际内存故障并返回 NULL,将调用 PostAlloc 。
通过 PostAlloc 的返回对 PreAlloc 的调用保证是线程安全的。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | objidl.h |