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.

HRESULT BeginThreadAffinity ();

Rückgabewert

HRESULT

Beschreibungen

S_OK

BeginThreadAffinity erfolgreich zurückgegeben.

HOST_E_CLRNOTAVAILABLE

Die Common Language Runtime (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.

Hinweise

Die CLR führt Aufrufe von IHostTaskManager::BeginThreadAffinity i. d. R. im Kontext eines Aufrufs von Thread.BeginThreadAffinity aus. Die aktuelle Aufgabe darf erst neu geplant werden, nachdem ein entsprechender Aufruf von IHostTaskManager::EndThreadAffinity erfolgt ist. Aufgaben können beendet werden. Wenn eine Aufgabe wieder gestartet wird, muss sie jedoch demselben Betriebssystemthread zugeordnet sein, in dem sie beendet wurde. Geschachtelte Aufrufe von BeginThreadAffinity haben keine Auswirkungen, da sich der Aufruf auf die aktuelle Aufgabe bezieht.

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

Siehe auch

Referenz

ICLRTask-Schnittstelle

ICLRTaskManager-Schnittstelle

IHostTask-Schnittstelle

IHostTaskManager-Schnittstelle