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.