Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Erstellt ein IHostSemaphore-Objekt, das die Common Language Runtime (CLR) als Semaphor für Warteereignisse verwenden kann.
HRESULT CreateSemaphore (
[in] DWORD dwInitial,
[in] DWORD dwMax,
[out] IHostSemaphore **ppSemaphore
);
Parameter
dwInitial
[in] Die anfängliche Anzahl für ppSemaphore.dwMax
[in] Der maximale Anzahl für ppSemaphore.ppSemaphore
[out] Ein Zeiger auf die Adresse einer IHostSemaphore-Instanz oder NULL, wenn das Semaphor nicht erstellt werden konnte.
Rückgabewert
HRESULT |
Beschreibungen |
|---|---|
S_OK |
CreateSemaphore erfolgreich zurückgegeben. |
HOST_E_CLRNOTAVAILABLE |
Die CLR wurde nicht in einen Prozess geladen oder befindet sich in einem Zustand, in dem sie weder verwalteten Code ausführen noch den Aufruf erfolgreich verarbeiten kann. |
HOST_E_TIMEOUT |
Der Aufruf hat das Zeitlimit überschritten. |
HOST_E_NOT_OWNER |
Der Aufrufer ist nicht Besitzer der Sperre. |
HOST_E_ABANDONED |
Ein Ereignis wurde abgebrochen, während ein blockierter Thread oder eine blockierte Fiber auf das Ereignis gewartet hat. |
E_FAIL |
Ein unbekannter, schwerwiegender Fehler ist aufgetreten. Wenn eine Methode E_FAIL zurückgibt, kann die CLR innerhalb des Prozesses nicht mehr verwendet werden. Nachfolgende Aufrufe von Hostmethoden geben HOST_E_CLRNOTAVAILABLE zurück. |
E_OUTOFMEMORY |
Es war nicht genügend Arbeitsspeicher verfügbar, um das angeforderte Ereignisobjekt zu erstellen. |
Hinweise
CreateSemaphore spiegelt die Win32-Funktion, die über den gleichen Namen verfügt. Der dwInitial-Parameter und der dwMax-Parameter verwenden dieselbe Semantik für die Semaphoranzahl wie der Win32-lInitialCount-Parameter bzw. der Win32-lMaximumCount-Parameter. dwInitial muss zwischen null und dwMax (einschließlich) liegen. dwMax muss größer null sein.
Anforderungen
Plattformen: siehe Systemanforderungen für .NET Framework.
Header: MSCorEE.h
Bibliothek: als Ressource in MSCorEE.dll enthalten
.NET Framework-Versionen: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0