GetThreadPriority, fonction (processthreadsapi.h)

Récupère la valeur de priorité pour le thread spécifié. Cette valeur, ainsi que la classe de priorité du processus du thread, déterminent le niveau de priorité de base du thread.

Syntaxe

int GetThreadPriority(
  [in] HANDLE hThread
);

Paramètres

[in] hThread

Handle pour le thread.

Le handle doit avoir le droit d’accès THREAD_QUERY_INFORMATION ou THREAD_QUERY_LIMITED_INFORMATION . Pour plus d’informations, consultez Sécurité des threads et droits d’accès.

Windows Server 2003 : Le handle doit avoir le droit d’accès THREAD_QUERY_INFORMATION .

Valeur retournée

Si la fonction réussit, la valeur de retour est le niveau de priorité du thread.

Si la fonction échoue, la valeur de retour est THREAD_PRIORITY_ERROR_RETURN. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Windows Phone 8.1 : cette fonction retourne toujours THREAD_PRIORITY_NORMAL.

Le niveau de priorité du thread est l’une des valeurs suivantes.

Code/valeur de retour Description
THREAD_PRIORITY_ABOVE_NORMAL
1
Priorité 1 point au-dessus de la classe de priorité.
THREAD_PRIORITY_BELOW_NORMAL
-1
Priorité 1 point sous la classe de priorité.
THREAD_PRIORITY_HIGHEST
2
Priorité 2 points au-dessus de la classe de priorité.
THREAD_PRIORITY_IDLE
-15
Priorité de base de 1 pour les processus IDLE_PRIORITY_CLASS, BELOW_NORMAL_PRIORITY_CLASS, NORMAL_PRIORITY_CLASS, ABOVE_NORMAL_PRIORITY_CLASS ou HIGH_PRIORITY_CLASS , et priorité de base de 16 pour les processus REALTIME_PRIORITY_CLASS .
THREAD_PRIORITY_LOWEST
-2
Priorité 2 points sous la classe de priorité.
THREAD_PRIORITY_NORMAL
0
Priorité normale pour la classe de priorité.
THREAD_PRIORITY_TIME_CRITICAL
15
Niveau de priorité de base de 15 pour les processus IDLE_PRIORITY_CLASS, BELOW_NORMAL_PRIORITY_CLASS, NORMAL_PRIORITY_CLASS, ABOVE_NORMAL_PRIORITY_CLASS ou HIGH_PRIORITY_CLASS , et niveau de priorité de base de 31 pour les processus REALTIME_PRIORITY_CLASS .
 

Si le thread a la classe de base REALTIME_PRIORITY_CLASS , cette fonction peut également retourner l’une des valeurs suivantes : -7, -6, -5, -4, -3, 3, 4, 5 ou 6. Pour plus d’informations, consultez Planification des priorités.

Remarques

Chaque thread a un niveau de priorité de base déterminé par la valeur de priorité du thread et la classe de priorité de son processus. Le système d’exploitation utilise le niveau de priorité de base de tous les threads exécutables pour déterminer quel thread obtient la tranche suivante de temps processeur. Les threads sont planifiés de façon par tourniquet (round robin) à chaque niveau de priorité, et ce n’est qu’en l’absence de threads exécutables à un niveau supérieur que la planification des threads à un niveau inférieur a lieu.

Pour obtenir un tableau montrant les niveaux de priorité de base pour chaque combinaison de classe de priorité et de valeur de priorité de thread, reportez-vous à la fonction SetPriorityClass .

Windows 8.1 et Windows Server 2012 R2 : cette fonction est prise en charge pour les applications du Windows Store.

Windows Phone 8.1 :Windows Phone les applications du Store peuvent appeler cette fonction, mais elle n’a aucun effet.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau | applications UWP]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête processthreadsapi.h (inclure Windows.h sur Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2)
Bibliothèque Kernel32.lib ; WindowsPhoneCore.lib sur Windows Phone 8.1
DLL Kernel32.dll ; KernelBase.dll sur Windows Phone 8.1

Voir aussi

GetPriorityClass

OpenThread

Fonctions de processus et de thread

Priorités de planification

SetPriorityClass

SetThreadPriority

Threads