ReclaimVirtualMemory-Funktion (memoryapi.h)
Gibt eine Reihe von Speicherseiten zurück, die dem System mit OfferVirtualMemory angeboten wurden.
Wenn der angebotene Arbeitsspeicher verworfen wurde, ist der Inhalt des Speicherbereichs nicht definiert und muss von der Anwendung neu geschrieben werden. Wenn der angebotene Arbeitsspeicher nicht verworfen wurde, wird er intakt zurückgewonnen.
Syntax
DWORD ReclaimVirtualMemory(
[in] void const *VirtualAddress,
[in] SIZE_T Size
);
Parameter
[in] VirtualAddress
Seitenbündige Startadresse des arbeitsspeicherbezogenen Speichers, der freigegeben werden soll.
[in] Size
Größe des zurückzugebenden Speicherbereichs in Byte. Die Größe muss ein ganzzahliges Vielfaches der Systemseitengröße sein.
Rückgabewert
Gibt ERROR_SUCCESS zurück, wenn erfolgreich war und der Arbeitsspeicher intakt wieder freigegeben wurde.
Gibt ERROR_BUSY zurück, wenn erfolgreich, aber der Arbeitsspeicher verworfen wurde und von der Anwendung neu geschrieben werden muss. In diesem Fall ist der Inhalt des Speicherbereichs nicht definiert.
Gibt andernfalls einen Systemfehlercode zurück.
Hinweise
Zurückgewonnene Speicherseiten können von der Anwendung verwendet werden und werden beim Paging in die System-Auslagerungsdatei geschrieben.
Wenn die Funktion ERROR_SUCCESS zurückgibt, sind die Daten auf den beanspruchten Seiten gültig. Wenn die Funktion ERROR_BUSY zurückgibt, wurden die Daten auf den beanspruchten Seiten vom System verworfen und sind nicht mehr gültig. Aus diesem Grund sollte dem System nur Arbeitsspeicher zur Verfügung gestellt werden, wenn die Anwendung die Daten nicht benötigt oder neu generieren kann.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 8.1 Update [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2012 R2 Update [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | memoryapi.h (einschließlich Windows.h, Memoryapi.h) |
Bibliothek | onecore.lib |
DLL | Kernel32.dll |