Freigeben über


IHostTaskManager::BeginThreadAffinity-Methode

Benachrichtigt den Host, dass verwalteter Code in eine Phase eintritt, in der die aktuelle Aufgabe nicht in einen anderen Betriebssystemthread verschoben werden darf

Syntax

HRESULT BeginThreadAffinity ();  

Rückgabewert

HRESULT BESCHREIBUNG
S_OK BeginThreadAffinity 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.

Bemerkungen

Die CLR ruft IHostTaskManager::BeginThreadAffinity normalerweise im Kontext eines Aufrufs von auf Thread.BeginThreadAffinity. Die aktuelle Aufgabe darf erst neu geplant werden, wenn ein entsprechender Aufruf von IHostTaskManager::EndThreadAffinity erfolgt. Aufgaben können herausgeschaltet werden, aber wenn sie wieder hineingeschaltet werden, müssen sie demselben Betriebssystemthread zugewiesen werden, aus dem sie herausgeschaltet wurden. Geschachtelte Aufrufe von BeginThreadAffinity haben keine Auswirkung, da der Aufruf auf die aktuelle Aufgabe verweist.

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