Methode IHostSyncManager::CreateSemaphore
Hiermee maakt u een IHostSemaphore-object voor de COMMON Language Runtime (CLR) om te gebruiken als een semafoor voor wachtgebeurtenissen.
Syntaxis
HRESULT CreateSemaphore (
[in] DWORD dwInitial,
[in] DWORD dwMax,
[out] IHostSemaphore **ppSemaphore
);
Parameters
dwInitial
[in] Het initiƫle aantal voor ppSemaphore
.
dwMax
[in] Het maximumaantal voor ppSemaphore
.
ppSemaphore
[uit] Een aanwijzer naar het adres van een IHostSemaphore
exemplaar of null als de semafoor niet kan worden gemaakt.
Retourwaarde
HRESULT | Beschrijving |
---|---|
S_OK | CreateSemaphore is geretourneerd. |
HOST_E_CLRNOTAVAILABLE | De CLR is niet geladen in een proces of de CLR heeft een status waarin beheerde code niet kan worden uitgevoerd of de aanroep kan worden verwerkt. |
HOST_E_TIMEOUT | Er is een time-out opgetreden voor het gesprek. |
HOST_E_NOT_OWNER | De beller is niet de eigenaar van het slot. |
HOST_E_ABANDONED | Een gebeurtenis is geannuleerd terwijl er een geblokkeerde thread of glasvezel op wachtte. |
E_FAIL | Er is een onbekende catastrofale fout opgetreden. Wanneer een methode E_FAIL retourneert, is de CLR niet meer bruikbaar binnen het proces. Volgende aanroepen naar hostingmethoden retourneren HOST_E_CLRNOTAVAILABLE. |
E_OUTOFMEMORY | Er was onvoldoende geheugen beschikbaar om het aangevraagde gebeurtenisobject te maken. |
Opmerkingen
CreateSemaphore
spiegelt de Win32-functie met dezelfde naam. De dwInitial
parameters en dwMax
gebruiken dezelfde semantiek voor het semafooraantal als respectievelijk de Win32 lInitialCount
- en lMaximumCount
parameters. dwInitial
moet tussen nul en dwMax
, inclusief zijn. dwMax
moet groter zijn dan nul.
Vereisten
Platforms: Zie Systeemvereisten.
Header: MSCorEE.h
Bibliotheek: Opgenomen als een resource in MSCorEE.dll
.NET Framework versies: beschikbaar sinds 2.0