Método IHostTaskManager::BeginThreadAffinity
Notifica o host que o código gerenciado é a inclusão de um ponto em que a tarefa corrente não deve ser movida para outro thread do sistema operacional.
HRESULT BeginThreadAffinity ();
Valor de retorno
HRESULT |
Descrição |
---|---|
S_OK |
BeginThreadAffinity retornado com êxito. |
HOST_E_CLRNOTAVAILABLE |
O common linguagem tempo de execução (CLR) não foi carregado em um processo ou o CLR está em um estado em que ele não possa executar código gerenciado ou processar a telefonar com êxito. |
HOST_E_TIMEOUT |
A telefonar expirou. |
HOST_E_NOT_OWNER |
O chamador não é proprietário do bloquear. |
HOST_E_ABANDONED |
Um evento foi cancelado enquanto um segmento bloqueado ou fibra estava aguardando nele. |
E_FAIL |
Ocorreu uma falha catastrófica desconhecida. Quando um método retorna E_FAIL, o CLR não é mais útil dentro do processo. As chamadas subseqüentes à hospedagem métodos retornam HOST_E_CLRNOTAVAILABLE. |
Comentários
O CLR chama normalmente IHostTaskManager::BeginThreadAffinity no contexto de uma telefonar para Thread.BeginThreadAffinity. A tarefa corrente não deve ser reagendada até que seja feita uma telefonar correspondente IHostTaskManager::EndThreadAffinity. Tarefas podem ser alternadas, mas quando eles são comutados de volta, eles devem ser atribuídos a thread do sistema operacional mesmo do qual eles foram alternados. Chamadas aninhadas para BeginThreadAffinity não têm efeito, pois a telefonar se refere à tarefa corrente.
Requisitos
Plataformas: See Requisitos de sistema do .NET framework.
Cabeçalho: MSCorEE.idl
Biblioteca: Incluído sistema autônomo um recurso em MSCorEE.dll
.NET Framework Versions: 3.5 SP1, 3,5, 3.0 SP1, 3.0, 2.0 SP1, 2.0