Partilhar via


Método IHostTask::SetPriority

Pede que o anfitrião ajuste o nível de prioridade do thread para a tarefa representada pela instância atual do IHostTask .

Sintaxe

HRESULT SetPriority (  
    [in] int newPriority  
);  

Parâmetros

newPriority
[in] Um número inteiro que representa o valor de prioridade de thread pedido para a tarefa representada pela instância atual IHostTask .

Devolver Valor

HRESULT Description
S_OK SetPriority 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 do mesmo.
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

É concedido tempo de processamento aos threads através de um sistema round robin que se baseia, em parte, no nível de prioridade de um thread. SetPriority permite que o CLR defina esse nível de prioridade de thread para a tarefa atual. São suportados os seguintes newPriority valores.

  • THREAD_PRIORITY_ABOVE_NORMAL

  • THREAD_PRIORITY_BELOW_NORMAL

  • THREAD_PRIORITY_HIGHEST

  • THREAD_PRIORITY_IDLE

  • THREAD_PRIORITY_LOWEST

  • THREAD_PRIORITY_NORMAL

  • THREAD_PRIORITY_TIME_CRITICAL

O CLR chama SetPriority quando o valor do Thread.Priority é modificado pelo código de utilizador. Um anfitrião pode definir os seus próprios algoritmos para a atribuição de prioridade de thread e é livre de ignorar este pedido.

Nota

SetPriority não comunica se o nível de prioridade do thread foi alterado. Chame IHostTask::GetPriority para determinar o valor do nível de prioridade do thread da tarefa.

Os valores de nível de prioridade do thread são definidos pela função Win32 SetThreadPriority . Para obter mais informações sobre a prioridade dos threads, veja a documentação da Plataforma windows.

Requisitos

Plataformas: Veja Requisitos do 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