GetThreadSelectedCpuSetMasks, fonction (processthreadsapi.h)

Retourne l’affectation explicite du jeu de processeurs du thread spécifié, si une affectation a été définie à l’aide de SetThreadSelectedCpuSetMasks ou SetThreadSelectedCpuSets.

Syntaxe

BOOL GetThreadSelectedCpuSetMasks(
  HANDLE          Thread,
  PGROUP_AFFINITY CpuSetMasks,
  USHORT          CpuSetMaskCount,
  PUSHORT         RequiredMaskCount
);

Paramètres

Thread

Spécifie le thread pour lequel interroger les ensembles de processeurs sélectionnés. Ce handle doit avoir le droit d’accès PROCESS_QUERY_LIMITED_INFORMATION . La valeur retournée par GetCurrentProcess peut également être spécifiée ici.

CpuSetMasks

Spécifie une mémoire tampon facultative pour récupérer une liste de structures GROUP_AFFINITY représentant les jeux de processeurs sélectionnés.

CpuSetMaskCount

Spécifie la taille du tableau CpuSetMasks , en éléments.

RequiredMaskCount

En cas de retour réussi, spécifie le nombre de structures d’affinité écrites dans le tableau. Si le tableau est trop petit, la fonction échoue avec ERROR_INSUFFICIENT_BUFFER et définit le paramètre RequiredMaskCount sur le nombre d’éléments requis. Le nombre d’éléments requis est toujours inférieur ou égal au nombre maximal de groupes retourné par GetMaximumProcessorGroupCount.

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 zéro et les informations d’erreur étendues peuvent être récupérées en appelant GetLastError.

Si le tableau fourni est trop petit, la valeur d’erreur est ERROR_INSUFFICIENT_BUFFER et requiredMaskCount est défini sur le nombre d’éléments requis.

Remarques

Si aucune affectation explicite n’est définie, RequiredMaskCount est défini sur 0 et la fonction réussit.

Cette fonction est analogue à GetThreadSelectedCpuSets, sauf qu’elle utilise des affinités de groupe par opposition aux ID de jeu d’UC pour représenter une liste de jeux d’UC. Cela signifie que les jeux de processeurs sélectionnés par le thread sont mappés à leurs processeurs de base, et que ces processeurs sont récupérés dans la liste résultante des affinités de groupe.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 11
Serveur minimal pris en charge Windows Server 2022
En-tête processthreadsapi.h
DLL kernel32.dll