Partilhar via


Método de IHostTaskManager::BeginThreadAffinity

Notifica o host que código gerenciado está entrando em um período no qual a tarefa atual não deve ser movida para outro thread do sistema operacional.

HRESULT BeginThreadAffinity ();

Valor de retorno

HRESULT

Descrição

S_OK

BeginThreadAffinityretornado com êxito.

HOST_E_CLRNOTAVAILABLE

O common language runtime (CLR) não foi carregado em um processo ou o CLR é em um estado em que ele não é possível executar código gerenciado ou processar a chamada com êxito.

HOST_E_TIMEOUT

A chamada foi esgotado.

HOST_E_NOT_OWNER

O chamador não possui o bloqueio.

HOST_E_ABANDONED

Um evento foi cancelado, enquanto um segmento bloqueado ou fibra estava esperando por ele.

E_FAIL

Ocorreu uma falha catastrófica desconhecida. Quando um método retorna E_FAIL, o CLR não é usável dentro do processo. As chamadas subseqüentes para hospedar os métodos retornam HOST_E_CLRNOTAVAILABLE.

Comentários

O CLR geralmente chama IHostTaskManager::BeginThreadAffinity no contexto de uma chamada para Thread.BeginThreadAffinity. A tarefa atual não deve ser reagendada até que seja feita uma chamada correspondente IHostTaskManager::EndThreadAffinity. Tarefas podem ser alternadas, mas quando eles são comutados novamente, deve ser atribuídos ao mesmo segmento de sistema operacional do qual eles foram alternados. Aninhados chamadas para BeginThreadAffinity não têm nenhum efeito, porque refere-se a chamada para a tarefa atual.

Requisitos

Plataformas: Consulte Requisitos de sistema do .NET Framework.

Cabeçalho: MSCorEE.h

Biblioteca: Incluído como um recurso em mscoree

.NET Framework versões: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Consulte também

Referência

Interface de ICLRTask

Interface de ICLRTaskManager

Interface de IHostTask

Interface de IHostTaskManager