Metodo IHostTask::SetPriority
Richiede che l'host regola il livello di priorità del thread per l'attività rappresentata dall'istanza IHostTask corrente.
Sintassi
HRESULT SetPriority (
[in] int newPriority
);
Parametri
newPriority
[in] Intero che rappresenta il valore di priorità del thread richiesto per l'attività rappresentata dall'istanza corrente IHostTask
.
Valore restituito
HRESULT | Descrizione |
---|---|
S_OK | SetPriority restituito correttamente. |
HOST_E_CLRNOTAVAILABLE | Common Language Runtime (CLR) non è stato caricato in un processo oppure CLR si trova in uno stato in cui non è possibile eseguire codice gestito o elaborare correttamente la chiamata. |
HOST_E_TIMEOUT | Timeout della chiamata. |
HOST_E_NOT_OWNER | Il chiamante non possiede il blocco. |
HOST_E_ABANDONED | Un evento è stato annullato durante l'attesa di un thread o di una fibra bloccata. |
E_FAIL | Si è verificato un errore irreversibile sconosciuto. Quando un metodo restituisce E_FAIL, CLR non è più utilizzabile all'interno del processo. Le chiamate successive ai metodi di hosting restituiscono HOST_E_CLRNOTAVAILABLE. |
Commenti
Ai thread viene concesso il tempo di elaborazione usando un sistema round robin parzialmente basato sul livello di priorità di un thread. SetPriority
consente a CLR di impostare il livello di priorità del thread per l'attività corrente. Sono supportati i valori seguenti newPriority
.
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 chiama SetPriority
quando il valore di Thread.Priority viene modificato dal codice utente. Un host può definire i propri algoritmi per l'assegnazione di priorità del thread ed è libero di ignorare questa richiesta.
Nota
SetPriority
non segnala se il livello di priorità del thread è stato modificato. Chiamare IHostTask::GetPriority per determinare il valore del livello di priorità del thread dell'attività.
I valori del livello di priorità del thread sono definiti dalla funzione Win32 SetThreadPriority
. Per altre informazioni sulla priorità dei thread, vedere la documentazione della piattaforma Windows.
Requisiti
Piattaforme: vedere Requisiti di sistema di .NET Framework.
Intestazione: MSCorEE.h
Libreria: Incluso come risorsa in MSCorEE.dll
Versioni di .NET Framework: Disponibile dalla versione 2.0