IHostTaskManager::BeginThreadAffinity – metoda
Upozorní hostitele, že spravovaný kód zadává období, ve kterém aktuální úkol nesmí být přesunut do jiného vlákna operačního systému.
Syntax
HRESULT BeginThreadAffinity ();
Návratová hodnota
HRESULT | Description |
---|---|
S_OK | BeginThreadAffinity úspěšně vráceno. |
HOST_E_CLRNOTAVAILABLE | Modul CLR (Common Language Runtime) nebyl načten do procesu nebo je ve stavu, ve kterém nemůže spustit spravovaný kód nebo úspěšně zpracovat volání. |
HOST_E_TIMEOUT | Časový limit hovoru vypršel. |
HOST_E_NOT_OWNER | Volající zámek nevlastní. |
HOST_E_ABANDONED | Událost byla zrušena, když na ni čekalo blokované vlákno nebo vlákno. |
E_FAIL | Došlo k neznámému katastrofickému selhání. Když metoda vrátí E_FAIL, CLR už není v rámci procesu použitelný. Následná volání metod hostování vrátí HOST_E_CLRNOTAVAILABLE. |
Poznámky
CLR obvykle volá IHostTaskManager::BeginThreadAffinity
v kontextu volání .Thread.BeginThreadAffinity Aktuální úkol nesmí být přeplánován, dokud není provedeno odpovídající volání IHostTaskManager::EndThreadAffinity. Úkoly se dají vypnout, ale když se přepnou zpátky, musí být přiřazené ke stejnému vláknu operačního systému, ze kterého byly vypnuté. Vnořená volání BeginThreadAffinity
nemají žádný účinek, protože volání odkazuje na aktuální úkol.
Požadavky
Platformy: Viz Požadavky na systém.
Záhlaví: MSCorEE.h
Knihovny: Zahrnuto jako prostředek v MSCorEE.dll
Verze rozhraní .NET Framework: K dispozici od verze 2.0