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


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

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

Синтаксис

DWORD DiscardVirtualMemory(
  [in] PVOID  VirtualAddress,
  [in] SIZE_T Size
);

Параметры

[in] VirtualAddress

Выровненный по страницам начальный адрес отбрасываемой памяти.

[in] Size

Размер отбрасываемой области памяти (в байтах). Размер должен быть целым числом, кратным размеру системной страницы.

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

ERROR_SUCCESS в случае успешного выполнения; в противном случае — код системной ошибки .

Комментарии

При сбое DiscardVirtualMemory содержимое региона не изменяется.

Используйте эту функцию для отмены содержимого памяти, которое больше не требуется, сохраняя при этом сам регион памяти зафиксированным. Сброс памяти может вернуть физическое ОЗУ системе. Когда приложение снова обращается к области памяти, резервная ОЗУ восстанавливается, а содержимое памяти не определено.

Важно Вызовы DiscardVirtualMemory завершатся ошибкой, если защита памяти не PAGE_READWRITE.
 

Требования

   
Минимальная версия клиента Обновление Windows 8.1 [классические приложения | Приложения UWP]
Минимальная версия сервера Обновление Windows Server 2012 R2 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header memoryapi.h (включая Windows.h, Memoryapi.h)
Библиотека onecore.lib
DLL Kernel32.dll

См. также

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

OfferVirtualMemory

ReclaimVirtualMemory

Функции виртуальной памяти

VirtualAlloc

VirtualFree

VirtualLock

VirtualQuery