Condividi tramite


Funzione EngInitializeSafeSemaphore (winddi.h)

La funzione EngInitializeSafeSemaphore inizializza il semaforo sicuro specificato.

Sintassi

ENGAPI BOOL EngInitializeSafeSemaphore(
  [out] ENGSAFESEMAPHORE *pssem
);

Parametri

[out] pssem

Puntatore alla struttura ENGSAFESEMAPHORE allocata dal driver da inizializzare.

Valore restituito

EngInitializeSafeSemaphore restituisceTRUE al successo. In caso contrario, restituisce FALSE.

Commenti

EngInitializeSafeSemaphore e EngDeleteSafeSemaphore sono thread-safe, operando in un blocco e mantenendo un conteggio di riferimenti sul semaforo. Ciò garantisce che venga creato solo un semaforo indipendentemente dal numero di chiamate simultanee a esso e che il semaforo esiste fino all'ultimo riferimento a esso rilasciato.

Una volta inizializzato il semaforo sicuro, il driver può chiamare EngAcquireSemaphore e EngReleaseSemaphore con il membro hsem della struttura ENGSAFESEMAPHORE per la sincronizzazione.

I chiamanti di EngInitializeSafeSemaphore devono chiamare EngDeleteSafeSemaphore quando non hanno più bisogno del semaforo.

Requisiti

Requisito Valore
Client minimo supportato Disponibile in Windows 2000 e versioni successive dei sistemi operativi Windows.
Piattaforma di destinazione Universale
Intestazione winddi.h (include Winddi.h)
Libreria Win32k.lib
DLL Win32k.sys

Vedi anche

ENGSAFESEMAPHORE

EngAcquireSemaphore

EngDeleteSafeSemaphore

EngIsSemaphoreOwned

EngIsSemaphoreOwnedByCurrentThread

EngReleaseSemaphore