Metodo IHostSyncManager::CreateSemaphore
Crea un oggetto IHostSemaphore che Common Language Runtime utilizza come semaforo per gli eventi di attesa.
HRESULT CreateSemaphore (
[in] DWORD dwInitial,
[in] DWORD dwMax,
[out] IHostSemaphore **ppSemaphore
);
Parametri
dwInitial
[in] Conteggio iniziale per ppSemaphore.dwMax
[in] Conteggio massimo per ppSemaphore.ppSemaphore
[out] Puntatore all'indirizzo di un'istanza di IHostSemaphore oppure null se non è stato possibile creare il semaforo.
Valore restituito
HRESULT |
Oggetto di descrizione |
---|---|
S_OK |
CreateSemaphore ha restituito correttamente un valore. |
HOST_E_CLRNOTAVAILABLE |
Common Language Runtime non è stato caricato in un processo oppure si trova in uno stato in cui non è possibile eseguire codice gestito né elaborare correttamente la chiamata. |
HOST_E_TIMEOUT |
Timeout della chiamata. |
HOST_E_NOT_OWNER |
Il chiamante non è il proprietario del blocco. |
HOST_E_ABANDONED |
Un evento è stato annullato mentre un thread o un fiber bloccato era in attesa di tale evento. |
E_FAIL |
Si è verificato un errore irreversibile sconosciuto. Se un metodo restituisce E_FAIL, CLR non sarà più utilizzabile all'interno del processo. Le successive chiamate ai metodi di hosting restituiranno HOST_E_CLRNOTAVAILABLE. |
E_OUTOFMEMORY |
Memoria insufficiente per la creazione dell'oggetto evento richiesto. |
Note
CreateSemaphore si comporta in modo identico alla funzione Win32 con lo stesso nome. Per il conteggio del semaforo, i parametri dwInitial e dwMax utilizzano la stessa semantica dei parametri Win32 lInitialCount e lMaximumCount, rispettivamente. dwInitial deve essere compreso tra zero e dwMax, inclusi. dwMax deve essere maggiore di zero.
Requisiti
Piattaforme: vedere Requisiti di sistema di .NET Framework.
Intestazione: MSCorEE.h
Libreria: inclusa come risorsa in MSCorEE.dll
Versioni di .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0