Функция FreeUserPhysicalPages (memoryapi.h)

Освобождает страницы физической памяти, выделенные ранее с помощью AllocateUserPhysicalPages или AllocateUserPhysicalPagesNuma. Если какая-либо из этих страниц в настоящее время сопоставлена в регионе Расширения окон адресов (AWE), они автоматически распакуются этим вызовом. Это не влияет на виртуальное адресное пространство, занятое указанной областью AWE.

64-разрядная версия Windows в системах на основе Itanium: Из-за разницы в размерах страниц FreeUserPhysicalPages не поддерживается для 32-разрядных приложений.

Синтаксис

BOOL FreeUserPhysicalPages(
  [in]      HANDLE     hProcess,
  [in, out] PULONG_PTR NumberOfPages,
  [in]      PULONG_PTR PageArray
);

Параметры

[in] hProcess

Дескриптор процесса.

Функция освобождает память в виртуальном адресном пространстве этого процесса.

[in, out] NumberOfPages

Размер освобождаемой физической памяти в страницах.

При возврате, если функция завершается сбоем, этот параметр указывает количество освобожденных страниц.

[in] PageArray

Указатель на массив номеров кадров страницы выделенной памяти для освобождения.

Возвращаемое значение

Если функция выполнена успешно, возвращается значение TRUE.

Если функция завершается сбоем, возвращается значение FALSE. В этом случае параметр NumberOfPages отражает количество фактически выпущенных страниц. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

В многопроцессорной среде эта функция поддерживает согласованность буфера аппаратного преобразования. При возврате этой функции все потоки на всех процессорах гарантированно увидят правильное сопоставление.

Чтобы скомпилировать приложение, использующее эту функцию, определите макрос _WIN32_WINNT как 0x0500 или более поздней версии. Дополнительные сведения см. в разделе Использование заголовков Windows.

Примеры

Пример см. в разделе Пример AWE.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header memoryapi.h (включая Windows.h, Memoryapi.h)
Библиотека onecore.lib
DLL Kernel32.dll

См. также

Расширения адресного окна

AllocateUserPhysicalPages

AllocateUserPhysicalPagesNuma

MapUserPhysicalPages

MapUserPhysicalPagesScatter

Функции управления памятью