Método ICLRTask::SwitchIn
Notifica o CLR (Common Language Runtime) de que a tarefa que a instância ICLRTask atual representa está em um estado operável.
Sintaxe
HRESULT SwitchIn (
[in] HANDLE threadHandle
);
Parâmetros
threadHandle
[in] Um identificador para o thread físico no qual a tarefa representada pela instância atual de ICLRTask
está sendo executada.
Valor Retornado
HRESULT | Descrição |
---|---|
S_OK | SwitchIn retornado com êxito. |
HOST_E_CLRNOTAVAILABLE | O CLR não foi carregado em um processo, ou o CLR está em um estado no qual não pode executar código gerenciado ou processar a chamada com êxito. |
HOST_E_TIMEOUT | Uma chamada atingiu o tempo limite. |
HOST_E_NOT_OWNER | O chamador não possui o bloqueio. |
HOST_E_ABANDONED | Um evento foi cancelado enquanto uma fibra ou um thread bloqueado estava esperando por ele. |
E_FAIL | Uma falha catastrófica desconhecida ocorreu. Quando um método retorna E_FAIL, o CLR não pode mais ser usado no processo. Chamadas subsequentes para métodos de hospedagem retornam HOST_E_CLRNOTAVAILABLE. |
HOST_E_INVALIDOPERATION | SwitchIn foi chamado sem uma chamada anterior ao Método SwitchOut. |
Comentários
O parâmetro threadHandle
representa um identificador para o thread do sistema operacional no qual a tarefa representada pela instância atual de ICLRTask
foi agendada. Se houver uma representação nesse thread, você precisará chamar IHostSecurityManager::RevertToSelf antes de alternar na tarefa.
Observação
Uma chamada a SwitchIn
sem uma chamada anterior a SwitchOut
falhará com um valor HRESULT de HOST_E_INVALIDOPERATION.
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: MSCorEE.h
Biblioteca: incluída como um recurso no MSCorEE.dll
Versões do .NET Framework: disponíveis desde 2.0