Funzione GlobalUnlock (winbase.h)
Decrementa il conteggio dei blocchi associato a un oggetto memoria allocato con GMEM_MOVEABLE. Questa funzione non ha alcun effetto sugli oggetti di memoria allocati con GMEM_FIXED.
Sintassi
BOOL GlobalUnlock(
[in] HGLOBAL hMem
);
Parametri
[in] hMem
Handle per l'oggetto memoria globale. Questo handle viene restituito dalla funzione GlobalAlloc o GlobalReAlloc.
Valore restituito
Se l'oggetto memoria è ancora bloccato dopo aver decrementato il conteggio dei blocchi, il valore restituito è un valore diverso da zero. Se l'oggetto memoria viene sbloccato dopo aver decrementato il conteggio dei blocchi, la funzione restituisce zero e GetLastError restituisce NO_ERROR.
Se la funzione ha esito negativo, il valore restituito è zero e GetLastError restituisce un valore diverso da NO_ERROR.
Commenti
Le strutture di dati interne per ogni oggetto memoria includono un conteggio di blocchi inizialmente zero. Per gli oggetti di memoria rimovibili, la funzione GlobalLock incrementa il conteggio per uno e GlobalUnlock decrementa il conteggio per uno. Per ogni chiamata eseguita da un processo a GlobalLock per un oggetto, deve eventualmente chiamare GlobalUnlock. La memoria bloccata non verrà spostata o eliminata, a meno che l'oggetto memoria non venga riallocato usando la funzione GlobalReAlloc . Il blocco di memoria di un oggetto memoria bloccato rimane bloccato fino a quando il numero di blocchi viene decrementato su zero, al momento in cui può essere spostato o rimosso.
Gli oggetti di memoria allocati con GMEM_FIXED hanno sempre un numero di blocchi pari a zero. Se il blocco di memoria specificato è memoria fissa, questa funzione restituisce TRUE.
Se l'oggetto memoria è già sbloccato, GlobalUnlock restituisce i report FALSE e GetLastErrorERROR_NOT_LOCKED.
Un processo non deve basarsi sul valore restituito per determinare il numero di volte in cui deve successivamente chiamare GlobalUnlock per un oggetto memoria.
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 | winbase.h (include Windows.h) |
Libreria | Kernel32.lib |
DLL | Kernel32.dll |