IHostSyncManager::CreateSemaphore – metoda
Vytvoří objekt IHostSemaphore pro modul CLR (Common Language Runtime), který se použije jako semafor pro události čekání.
Syntaxe
HRESULT CreateSemaphore (
[in] DWORD dwInitial,
[in] DWORD dwMax,
[out] IHostSemaphore **ppSemaphore
);
Parametry
dwInitial
[v] Počáteční počet pro ppSemaphore
.
dwMax
[v] Maximální počet pro ppSemaphore
.
ppSemaphore
[out] Ukazatel na adresu IHostSemaphore
instance nebo null, pokud semafor nelze vytvořit.
Návratová hodnota
HRESULT | Description |
---|---|
S_OK | CreateSemaphore úspěšně vráceno. |
HOST_E_CLRNOTAVAILABLE | ClR nebyl načten do procesu nebo clr je ve stavu, ve kterém nemůže spustit spravovaný kód nebo úspěšně zpracovat volání. |
HOST_E_TIMEOUT | Časový limit hovoru vypršel. |
HOST_E_NOT_OWNER | Volající zámek nevlastní. |
HOST_E_ABANDONED | Událost byla zrušena, zatímco na ni čekalo blokované vlákno nebo vlákno. |
E_FAIL | Došlo k neznámému závažnému selhání. Když metoda vrátí E_FAIL, clr již není možné v rámci procesu použít. Následná volání metod hostování vrátí HOST_E_CLRNOTAVAILABLE. |
E_OUTOFMEMORY | K vytvoření požadovaného objektu události nebyl k dispozici dostatek paměti. |
Poznámky
CreateSemaphore
zrcadlí funkci Win32, která má stejný název. Parametry dwInitial
a dwMax
používají stejnou sémantiku pro počet semaforu jako parametry Win32 lInitialCount
a lMaximumCount
v uvedeném pořadí. dwInitial
musí být mezi nulou a dwMax
, včetně. dwMax
musí být větší než nula.
Požadavky
Platformy: Viz Požadavky na systém.
Záhlaví: MSCorEE.h
Knihovny: Zahrnutý jako prostředek v MSCorEE.dll
Verze rozhraní .NET Framework: K dispozici od verze 2.0