Freigeben über


IHostSyncManager::CreateCrst-Methode

Erstellt ein kritisches Abschnittsobjekt für die Synchronisierung.

Syntax

HRESULT CreateCrst (  
    [out] IHostCrst** ppCrst  
);  

Parameter

ppCrst
[out] Ein Zeiger auf die Adresse einer IHostCrst-Instanz, die vom Host implementiert wurde, oder NULL, wenn der kritische Abschnitt nicht erstellt werden konnte.

Rückgabewert

HRESULT BESCHREIBUNG
S_OK CreateCrst 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 kritischen Abschnitts war nicht genügend Arbeitsspeicher verfügbar.

Bemerkungen

Kritische Abschnittsobjekte bieten eine ähnliche Synchronisierung wie bei der, die von einem Mutex-Objekt bereitgestellt wird, mit dem Unterschied, dass kritische Abschnitte nur von den Threads eines einzelnen Prozesses verwendet werden können. CreateCrst spiegelt die InitializeCriticalSection-Win32-Funktion.

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