IHostTask::SetPriority Method
Requests that the host adjust the thread priority level for the task represented by the current IHostTask instance.
HRESULT SetPriority (
[in] int newPriority
);
Parameters
- newPriority
[in] An integer that represents the requested thread priority value for the task represented by the current IHostTask instance.
Return Value
HRESULT |
Description |
---|---|
S_OK |
SetPriority returned successfully. |
HOST_E_CLRNOTAVAILABLE |
The common language runtime (CLR) has not been loaded into a process, or the CLR is in a state in which it cannot run managed code or process the call successfully. |
HOST_E_TIMEOUT |
The call timed out. |
HOST_E_NOT_OWNER |
The caller does not own the lock. |
HOST_E_ABANDONED |
An event was canceled while a blocked thread or fiber was waiting on it. |
E_FAIL |
An unknown catastrophic failure occurred. When a method returns E_FAIL, the CLR is no longer usable within the process. Subsequent calls to hosting methods return HOST_E_CLRNOTAVAILABLE. |
Remarks
Threads are granted processing time using a round-robin system that is partly based on a thread's priority level. SetPriority allows the CLR to set that thread priority level for the current task. The following newPriority values are supported.
THREAD_PRIORITY_ABOVE_NORMAL
THREAD_PRIORITY_BELOW_NORMAL
THREAD_PRIORITY_HIGHEST
THREAD_PRIORITY_IDLE
THREAD_PRIORITY_LOWEST
THREAD_PRIORITY_NORMAL
THREAD_PRIORITY_TIME_CRITICAL
The CLR calls SetPriority when the value of the Thread..::.Priority is modified by user code. A host can define its own algorithms for thread priority assignment, and is free to ignore this request.
Note: |
---|
SetPriority does not report whether the thread priority level was changed. Call IHostTask::GetPriority to determine the value of the task's thread priority level. |
Thread priority level values are defined by the Win32 SetThreadPriority function. For more information about thread priority, see the Windows Platform documentation.
Requirements
Platforms: Windows 2000, Windows XP, Windows Server 2003 family
Header: MSCorEE.idl
Library: Included as a resource in MSCorEE.dll
.NET Framework Version: 2.0