Partilhar via


Método IHostTaskManager::BeginThreadAffinity

Notifica o anfitrião de que o código gerido está a introduzir um período em que a tarefa atual não deve ser movida para outro thread do sistema operativo.

Syntax

HRESULT BeginThreadAffinity ();  

Devolver Valor

HRESULT Description
S_OK BeginThreadAffinity devolvido com êxito.
HOST_E_CLRNOTAVAILABLE O runtime de linguagem comum (CLR) não foi carregado para um processo ou o CLR está num estado em que não pode executar código gerido ou processar a chamada com êxito.
HOST_E_TIMEOUT A chamada excedeu o limite de tempo.
HOST_E_NOT_OWNER O autor da chamada não é o proprietário do bloqueio.
HOST_E_ABANDONED Um evento foi cancelado enquanto um thread ou fibra bloqueado estava à espera.
E_FAIL Ocorreu uma falha catastrófica desconhecida. Quando um método devolve E_FAIL, o CLR já não é utilizável no processo. As chamadas subsequentes para métodos de alojamento devolvem HOST_E_CLRNOTAVAILABLE.

Observações

Normalmente, o CLR chama IHostTaskManager::BeginThreadAffinity no contexto de uma chamada para Thread.BeginThreadAffinity. A tarefa atual não pode ser reagendada até que seja efetuada uma chamada correspondente para IHostTaskManager::EndThreadAffinity. As tarefas podem ser desativadas, mas quando são reativadas, têm de ser atribuídas ao mesmo thread do sistema operativo a partir do qual foram desativadas. As chamadas BeginThreadAffinity aninhadas não têm qualquer efeito, porque a chamada refere-se à tarefa atual.

Requisitos

Plataformas: Veja Requisitos de Sistema.

Cabeçalho: MSCorEE.h

Biblioteca: Incluído como um recurso no MSCorEE.dll

.NET Framework Versões: Disponível desde 2.0

Ver também