Поделиться через


Метод 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 .

Вызов PreAlloc через возврат из PostAlloc гарантированно будет потокобезопасным.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header objidl.h

См. также раздел

IMalloc::Alloc

IMallocSpy

IMallocSpy::P ostAlloc