Partager via


SetThreadIdealProcessorEx, fonction (processthreadsapi.h)

Définit le processeur idéal pour le thread spécifié et récupère éventuellement le processeur idéal précédent.

Syntaxe

BOOL SetThreadIdealProcessorEx(
  [in]            HANDLE            hThread,
  [in]            PPROCESSOR_NUMBER lpIdealProcessor,
  [out, optional] PPROCESSOR_NUMBER lpPreviousIdealProcessor
);

Paramètres

[in] hThread

Handle du thread pour lequel définir le processeur idéal. Ce handle doit avoir été créé avec le droit d’accès THREAD_SET_INFORMATION. Pour plus d’informations, consultez Sécurité des threads et droits d’accès.

[in] lpIdealProcessor

Pointeur vers une structure PROCESSOR_NUMBER qui spécifie le numéro de processeur du processeur idéal souhaité.

[out, optional] lpPreviousIdealProcessor

Pointeur vers une structure PROCESSOR_NUMBER pour recevoir le processeur idéal précédent. Ce paramètre peut pointer vers le même emplacement de mémoire que le paramètre lpIdealProcessor . Ce paramètre peut être NULL si le processeur idéal précédent n’est pas requis.

Valeur retournée

Si la fonction réussit, elle retourne une valeur différente de zéro.

Si la fonction échoue, elle retourne zéro. Pour obtenir des informations d’erreur étendues, utilisez GetLastError.

Remarques

La spécification d’un processeur idéal de thread fournit au planificateur une indication sur le processeur préféré pour un thread. Le planificateur exécute le thread sur le processeur idéal du thread lorsque cela est possible.

À compter de Windows 11 et Windows Server 2022, sur un système avec plus de 64 processeurs, les affinités de processus et de thread couvrent tous les processeurs du système, sur tous les groupes de processeurs, par défaut. SetThreadIdealProcessorEx, en définissant le processeur préféré, définit également le groupe principal du thread sur le groupe du processeur préféré.

Pour compiler une application qui utilise cette fonction, définissez _WIN32_WINNT >= 0x0601. Pour plus d’informations, consultez Utilisation des en-têtes Windows.

Windows Phone 8.1 : cette fonction est prise en charge pour les applications Windows Phone Store sur Windows Phone 8.1 et versions ultérieures.

Windows 8.1 et Windows Server 2012 R2 : cette fonction est prise en charge pour les applications du Windows Store sur Windows 8.1, Windows Server 2012 R2 et versions ultérieures.

Configuration requise

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

Voir aussi

GetThreadIdealProcessorEx

SetThreadIdealProcessor