SetThreadGroupAffinity, fonction (processtopologyapi.h)

Définit l’affinité de groupe de processeurs pour le thread spécifié.

Syntaxe

BOOL SetThreadGroupAffinity(
  [in]            HANDLE               hThread,
  [in]            const GROUP_AFFINITY *GroupAffinity,
  [out, optional] PGROUP_AFFINITY      PreviousGroupAffinity
);

Paramètres

[in] hThread

Handle pour le thread.

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

[in] GroupAffinity

Une GROUP_AFFINITY structure qui spécifie l’affinité de groupe de processeurs à utiliser pour le thread spécifié.

[out, optional] PreviousGroupAffinity

Pointeur vers une structure de GROUP_AFFINITY pour recevoir l’affinité de groupe précédente du thread. Ce paramètre peut être NULL.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations d’erreur étendues, utilisez GetLastError.

Remarques

À 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. La fonction SetThreadGroupAffinity limite l’affinité d’un thread aux processeurs sur le groupe de processeurs unique spécifié par l’élément GroupAffinity donné. Ce groupe deviendra également le groupe principal du thread.

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

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
Plateforme cible Windows
En-tête processtopologyapi.h
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

GROUP_AFFINITY