Método ICLRTask::NeedsPriorityScheduling
Obtém um valor que indica se a tarefa atual, que está sendo alternada, precisa ser marcada como uma prioridade alta para reagendamento.
Sintaxe
HRESULT NeedsPriorityScheduling (
[out] BOOL *pbNeedsPriorityScheduling
);
Parâmetros
pbNeedsPriorityRescheduling
[out] true
, se o host deve tentar reagendar a instância de tarefa atual o mais rápido possível, caso contrário, false
.
Valor Retornado
HRESULT | Descrição |
---|---|
S_OK | NeedsPriorityRescheduling retornado com êxito. |
HOST_E_CLRNOTAVAILABLE | O CLR (Common Language Runtime) não foi carregado em um processo ou está em um estado no qual não pode executar o código gerenciado ou processar a chamada com sucesso. |
HOST_E_TIMEOUT | Uma chamada atingiu o tempo limite. |
HOST_E_NOT_OWNER | O chamador não possui o bloqueio. |
HOST_E_ABANDONED | Um evento foi cancelado enquanto uma fibra ou um thread bloqueado estava esperando por ele. |
E_FAIL | Uma falha catastrófica desconhecida ocorreu. Quando um método retorna E_FAIL, o CLR não pode mais ser usado no processo. Chamadas subsequentes para métodos de hospedagem retornam HOST_E_CLRNOTAVAILABLE. |
Comentários
Em situações em que a tarefa está próxima de ser coletada pelo coletor de lixo, o CLR define o valor depbNeedsPriorityScheduling
para true
, indicando reagendamento de alta prioridade. Isso permite que o host reagenda a tarefa rapidamente, minimizando assim o potencial de atrasos na coleta de lixo e permitindo que o host e o runtime cooperem na conservação de recursos de memória.
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: MSCorEE.h
Biblioteca: incluída como um recurso no MSCorEE.dll
Versões do .NET Framework: disponíveis desde 2.0