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

另请参阅

IMalloc::Alloc

IMallocSpy

IMallocSpy::P ostAlloc