ICLRTask::SwitchIn — Metoda
Powiadamia środowisko uruchomieniowe języka wspólnego (CLR), że zadanie, które reprezentuje bieżące wystąpienie ICLRTask , jest teraz w stanie zrozumiałym.
Składnia
HRESULT SwitchIn (
[in] HANDLE threadHandle
);
Parametry
threadHandle
[w] Dojście do wątku fizycznego, na którym zadanie reprezentowane przez bieżące ICLRTask
wystąpienie jest wykonywane.
Wartość zwracana
HRESULT | Opis |
---|---|
S_OK | SwitchIn zwrócono pomyślnie. |
HOST_E_CLRNOTAVAILABLE | ClR nie został załadowany do procesu lub CLR jest w stanie, w którym nie może uruchomić kodu zarządzanego ani pomyślnie przetworzyć wywołania. |
HOST_E_TIMEOUT | Upłynął limit czasu wywołania. |
HOST_E_NOT_OWNER | Obiekt wywołujący nie jest właścicielem blokady. |
HOST_E_ABANDONED | Zdarzenie zostało anulowane, gdy zablokowany wątek lub światłowod czekał na nie. |
E_FAIL | Wystąpił nieznany katastrofalny błąd. Gdy metoda zwraca E_FAIL, clR nie będzie już można używać w ramach tego procesu. Kolejne wywołania metod hostingu zwracają HOST_E_CLRNOTAVAILABLE. |
HOST_E_INVALIDOPERATION | SwitchIn została wywołana bez wcześniejszego wywołania metody SwitchOut. |
Uwagi
Parametr threadHandle
reprezentuje dojście do wątku systemu operacyjnego, na którym zaplanowano zadanie reprezentowane przez bieżące ICLRTask
wystąpienie. Jeśli personifikacja wystąpiła w tym wątku, przed przełączeniem zadania należy wywołać metodę IHostSecurityManager::RevertToSelf .
Uwaga
Wywołanie metody SwitchIn
bez wcześniejszego wywołania SwitchOut
kończy się niepowodzeniem z wartością HRESULT HOST_E_INVALIDOPERATION.
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: MSCorEE.h
Biblioteki: Uwzględnione jako zasób w MSCorEE.dll
.NET Framework wersje: dostępne od wersji 2.0