IHostSyncManager::CreateSemaphore, metod
Skapar ett IHostSemaphore-objekt för CLR (Common Language Runtime) som ska användas som en semafor för väntehändelser.
Syntax
HRESULT CreateSemaphore (
[in] DWORD dwInitial,
[in] DWORD dwMax,
[out] IHostSemaphore **ppSemaphore
);
Parametrar
dwInitial
[in] Det första antalet för ppSemaphore
.
dwMax
[in] Det maximala antalet för ppSemaphore
.
ppSemaphore
[ut] En pekare till adressen för en IHostSemaphore
instans eller null om semaforen inte kunde skapas.
Returvärde
HRESULT | Description |
---|---|
S_OK | CreateSemaphore returnerades. |
HOST_E_CLRNOTAVAILABLE | CLR har inte lästs in i en process, eller så är CLR i ett tillstånd där den inte kan köra hanterad kod eller bearbeta anropet. |
HOST_E_TIMEOUT | Tidsgränsen för samtalet överst. |
HOST_E_NOT_OWNER | Anroparen äger inte låset. |
HOST_E_ABANDONED | En händelse avbröts medan en blockerad tråd eller fiber väntade på den. |
E_FAIL | Ett okänt oåterkalleligt fel inträffade. När en metod returnerar E_FAIL kan CLR inte längre användas i processen. Efterföljande anrop till värdmetoder returnerar HOST_E_CLRNOTAVAILABLE. |
E_OUTOFMEMORY | Det fanns inte tillräckligt med minne för att skapa det begärda händelseobjektet. |
Kommentarer
CreateSemaphore
speglar Win32-funktionen som har samma namn. Parametrarna dwInitial
och dwMax
använder samma semantik för semaforantalet som Win32 lInitialCount
lMaximumCount
respektive parametrar. dwInitial
måste vara mellan noll och dwMax
, inklusivt. dwMax
måste vara större än noll.
Krav
Plattformar: Se Systemkrav.
Huvudet: MSCorEE.h
Bibliotek: Ingår som en resurs i MSCorEE.dll
.NET Framework versioner: Tillgänglig sedan 2.0