ReclaimVirtualMemory 函式 (memoryapi.h)
使用 OfferVirtualMemory 回收提供給系統的記憶體頁面範圍。
如果已捨棄提供的記憶體,則記憶體區域的內容未定義,而且必須由應用程式重寫。 如果未捨棄提供的記憶體,則會完整回收。
語法
DWORD ReclaimVirtualMemory(
[in] void const *VirtualAddress,
[in] SIZE_T Size
);
參數
[in] VirtualAddress
要回收之內存的頁面對齊起始位址。
[in] Size
要回收的記憶體區域大小,以位元組為單位。 Size 必須是系統頁面大小的整數倍數。
傳回值
如果成功且記憶體已完整回收,則會傳回ERROR_SUCCESS。
如果成功但已捨棄記憶體,且必須由應用程式重寫,則傳回ERROR_BUSY。 在此情況下,記憶體區域的內容未定義。
否則會傳回 系統錯誤碼 。
備註
應用程式可以使用回收的記憶體頁面,並在發生分頁時寫入系統分頁檔案。
如果函式傳回ERROR_SUCCESS,則回收頁面中的數據有效。 如果函式傳回ERROR_BUSY,系統會捨棄回收頁面中的數據,且不再有效。 基於這個理由,只有在應用程式不需要或可以重新產生數據時,才會提供記憶體給系統。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8.1 更新版 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2012 R2 更新 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | memoryapi.h (包括 Windows.h、Memoryapi.h) |
程式庫 | onecore.lib |
DLL | Kernel32.dll |