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