Funzione VirtualUnlock (memoryapi.h)

Sblocca un intervallo specificato di pagine nello spazio indirizzi virtuale di un processo, consentendo al sistema di scambiare le pagine nel file di paging, se necessario.

Sintassi

BOOL VirtualUnlock(
  [in] LPVOID lpAddress,
  [in] SIZE_T dwSize
);

Parametri

[in] lpAddress

Puntatore all'indirizzo di base dell'area delle pagine da sbloccare.

[in] dwSize

Dimensioni dell'area sbloccata, in byte. L'area delle pagine interessate include tutte le pagine contenenti uno o più byte nell'intervallo compreso tra il parametro lpAddress e (lpAddress+dwSize). Ciò significa che un intervallo di 2 byte che si allontana da un limite di pagina fa sì che entrambe le pagine vengano sbloccate.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Commenti

Affinché la funzione abbia esito positivo, l'intervallo specificato non deve corrispondere a un intervallo passato a una chiamata precedente alla funzione VirtualLock , ma tutte le pagine dell'intervallo devono essere bloccate. Se una delle pagine nell'intervallo specificato non è bloccata, VirtualUnlock rimuove tali pagine dal working set, imposta l'ultimo errore su ERROR_NOT_LOCKED e restituisce FALSE.

La chiamata a VirtualUnlock su un intervallo di memoria non bloccato rilascia le pagine dal working set del processo.

Requisiti

   
Client minimo supportato Windows XP [app desktop | App UWP]
Server minimo supportato Windows Server 2003 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione memoryapi.h (include Windows.h, Memoryapi.h)
Libreria onecore.lib
DLL Kernel32.dll

Vedere anche

Funzioni di gestione della memoria

Funzioni di memoria virtuale

VirtualLock