Funzione OfferVirtualMemory (memoryapi.h)
Indica che i dati contenuti in un intervallo di pagine di memoria non sono più necessari dall'applicazione e possono essere rimossi dal sistema, se necessario.
Le pagine specificate verranno contrassegnate come inaccessibili, rimosse dal set di lavoro del processo e non verranno scritte nel file di paging.
Per recuperare le pagine offerte successivamente, chiamare ReclaimVirtualMemory.
Sintassi
DWORD OfferVirtualMemory(
[in] PVOID VirtualAddress,
[in] SIZE_T Size,
[in] OFFER_PRIORITY Priority
);
Parametri
[in] VirtualAddress
Indirizzo iniziale allineato alla pagina dell'offerta della memoria.
[in] Size
Dimensioni, in byte, dell'area di memoria da offrire. Le dimensioni devono essere un numero intero multiplo delle dimensioni della pagina di sistema.
[in] Priority
La priorità indica l'importanza della memoria offerta all'applicazione. Una priorità più alta aumenta la probabilità che la memoria offerta possa essere recuperata intatta quando si chiama ReclaimVirtualMemory. Il sistema rimuove in genere memoria con priorità inferiore prima di eliminare la memoria con priorità superiore. La priorità deve essere uno dei valori seguenti.
Valore restituito
ERROR_SUCCESS se riuscito; un codice di errore di sistema in caso contrario.
Commenti
Per recuperare le pagine offerte, chiamare ReclaimVirtualMemory. I dati nelle pagine recuperate potrebbero essere stati eliminati, nel qual caso il contenuto dell'area di memoria non è definito e deve essere riscritto dall'applicazione.
Non chiamare OfferVirtualMemory per offrire memoria virtuale bloccata. In questo modo verrà sbloccato l'intervallo specificato di pagine.
Si noti che l'offerta e il recupero della memoria virtuale è simile all'uso dei flag di allocazione di MEM_RESET e MEM_RESET_UNDO memoria, ad eccezione del fatto che OfferVirtualMemory rimuove la memoria dal set di lavoro del processo e limita l'accesso alle pagine offerte fino a quando non vengono recuperate.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 8.1 Update [app desktop | App UWP] |
Server minimo supportato | Windows Server 2012 aggiornamento R2 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | memoryapi.h (includono Windows.h, Memoryapi.h) |
Libreria | onecore.lib |
DLL | Kernel32.dll |