DiscardVirtualMemory 函数 (memoryapi.h)
放弃一系列内存页的内存内容,而不取消内存。 已丢弃内存的内容未定义,必须由应用程序重写。
语法
DWORD DiscardVirtualMemory(
[in] PVOID VirtualAddress,
[in] SIZE_T Size
);
parameters
[in] VirtualAddress
要丢弃的内存的页对齐起始地址。
[in] Size
要丢弃的内存区域的大小(以字节为单位)。 Size 必须是系统页面大小的整数倍数。
返回值
如果成功,ERROR_SUCCESS;否则 为系统错误代码 。
注解
如果 DiscardVirtualMemory 失败,则不会更改该区域的内容。
使用此函数可放弃不再需要的内存内容,同时保留内存区域本身的提交。 放弃内存可能会将物理 RAM 返回给系统。 当应用程序再次访问内存区域时,将还原后备 RAM,并且内存的内容未定义。
重要如果未PAGE_READWRITE内存保护,则调用 DiscardVirtualMemory 将失败。
要求
最低受支持的客户端 | Windows 8.1更新 [桌面应用 |UWP 应用] |
最低受支持的服务器 | Windows Server 2012 R2 更新 [桌面应用 |UWP 应用] |
目标平台 | Windows |
标头 | memoryapi.h (包括 Windows.h、Memoryapi.h) |
Library | onecore.lib |
DLL | Kernel32.dll |