Condividi tramite


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

Vedi anche