Freigeben über


IHostSyncManager::CreateRWLockReaderEvent-Methode

Erstellt ein Ereignisobjekt mit manueller Zurücksetzung für die Implementierung einer Lesesperre.

Syntax

HRESULT CreateRWLockReaderEvent (  
    [in]  BOOL bInitialState,  
    [in]  SIZE_T cookie,  
    [out] IHostManualEvent **ppEvent  
);  

Parameter

bInitialState
[in] true, wenn ppEvent signalisiert werden soll, andernfalls false.

cookie
[in] Ein Cookie, das der Lesesperre zugeordnet werden soll.

ppEvent
[out] Ein Zeiger auf die Adresse einer IHostManualEvent-Instanz oder NULL, wenn das Ereignisobjekt nicht erstellt werden konnte.

Rückgabewert

HRESULT BESCHREIBUNG
S_OK CreateRWLockReaderEvent wurde erfolgreich zurückgegeben.
HOST_E_CLRNOTAVAILABLE Die Common Language Runtime (CLR) wurde nicht in einen Prozess geladen, oder die CLR befindet sich in einem Zustand, in dem sie keinen verwalteten Code ausführen oder den Aufruf nicht erfolgreich verarbeiten kann.
HOST_E_TIMEOUT Timeout des Aufrufs.
HOST_E_NOT_OWNER Der Aufrufer besitzt die Sperre nicht.
HOST_E_ABANDONED Ein Ereignis wurde abgebrochen, während ein blockierter Thread oder eine blockierte Fiber darauf gewartet hat.
E_FAIL Es ist ein unbekannter katastrophaler Fehler aufgetreten. Wenn eine Methode E_FAIL zurückgibt, kann die CLR nicht mehr innerhalb des Prozesses verwendet werden. Nachfolgende Aufrufe von Hostingmethoden geben HOST_E_CLRNOTAVAILABLE zurück.
E_OUTOFMEMORY Zum Erstellen des angeforderten Ereignisobjekts war nicht genügend Arbeitsspeicher verfügbar.

Bemerkungen

Die CLR ruft CreateRWLockReaderEvent auf, um einen Verweis auf eine IHostManualEvent-Instanz zu erhalten, die in ihrer Implementierung einer Lesesperre verwendet wird. Der Host kann anhand des angegebenen Cookies feststellen, welche Aufgaben auf die Lesesperre warten, indem er die ICLRSyncManager-Schnittstelle abfragt.

Anforderungen

Plattformen: Informationen finden Sie unter Systemanforderungen.

Header: MSCorEE.h

Bibliothek: Als Ressource in „MsCorEE.dll“ enthalten.

.NET Framework-Versionen: Seit 2.0 verfügbar.

Siehe auch