Comparteix a través de


IHostTask::SetPriority (Método)

Solicita que el host ajuste el nivel de prioridad del subproceso para la tarea representada por la instancia actual de IHostTask .

Sintaxis

HRESULT SetPriority (
    [in] int newPriority
);

Parámetros

newPriority [in] Entero que representa el valor de prioridad de subproceso solicitado para la tarea representada por la instancia actual IHostTask .

Valor devuelto

HRESULT Descripción
S_OK SetPriority se devolvió correctamente.
HOST_E_CLRNOTAVAILABLE Common Language Runtime (CLR) no se ha cargado en un proceso o CLR está en un estado en el que no puede ejecutar código administrado ni procesar correctamente la llamada.
HOST_E_TIMEOUT Se agota el tiempo de espera de la llamada.
HOST_E_NOT_OWNER El autor de la llamada no posee el bloqueo.
HOST_E_ABANDONED Se canceló un evento mientras un subproceso bloqueado o fibra estaba esperando.
E_FAIL Se produjo un error catastrófico desconocido. Cuando un método devuelve E_FAIL, CLR ya no se puede usar dentro del proceso. Las llamadas posteriores a los métodos de hospedaje devuelven HOST_E_CLRNOTAVAILABLE.

Observaciones

A los subprocesos se les concede tiempo de procesamiento mediante un sistema round robin que se basa parcialmente en el nivel de prioridad de un subproceso. SetPriority permite que CLR establezca ese nivel de prioridad de subproceso para la tarea actual. Se admiten los siguientes 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

CLR llama SetPriority cuando el valor de se Thread.Priority modifica mediante código de usuario. Un host puede definir sus propios algoritmos para la asignación de prioridad de subproceso y es libre de omitir esta solicitud.

Nota:

SetPriority no informa de si se cambió el nivel de prioridad del subproceso. Llame a IHostTask::GetPriority para determinar el valor del nivel de prioridad del subproceso de la tarea.

Los valores de nivel de prioridad de subproceso se definen mediante la función Win32 SetThreadPriority . Para obtener más información sobre la prioridad del subproceso, consulte la documentación de la Plataforma Windows.

Requisitos

Plataformas: Consulte Requisitos del sistema.

Encabezado: MSCorEE.h

Biblioteca: Incluido como recurso en MSCorEE.dll

Versiones de .NET Framework: Disponible desde la versión 2.0

Consulte también