PERFORMANCE_DATA structure (winnt.h)
Contient les données de profilage de thread et de compteur matériel que vous avez demandées.
Syntaxe
typedef struct _PERFORMANCE_DATA {
WORD Size;
BYTE Version;
BYTE HwCountersCount;
DWORD ContextSwitchCount;
DWORD64 WaitReasonBitMap;
DWORD64 CycleTime;
DWORD RetryCount;
DWORD Reserved;
HARDWARE_COUNTER_DATA HwCounters[MAX_HW_COUNTERS];
} PERFORMANCE_DATA, *PPERFORMANCE_DATA;
Membres
Size
La taille de cette structure.
Version
Version de cette structure. Doit être défini sur PERFORMANCE_DATA_VERSION.
HwCountersCount
Nombre d’éléments de tableau dans le tableau HwCounters qui contiennent des données de compteur matériel. La valeur 3 signifie que le tableau contient des données pour trois compteurs matériels, et non que les éléments 0 à 2 contiennent des données de compteur.
ContextSwitchCount
Nombre de commutateurs de contexte qui se sont produits à partir du moment où le profilage a été activé.
WaitReasonBitMap
Masque de bits qui identifie les raisons des commutateurs de contexte qui se sont produits depuis la dernière lecture des données. Pour connaître les valeurs possibles, consultez l’énumération KWAIT_REASON (l’énumération est incluse dans le fichier Wdm.h du WDK).
CycleTime
Durée de cycle du thread (à l’exclusion du temps d’interruption) du moment où le profilage a été activé.
RetryCount
Nombre de fois où l’opération de lecture lit les données pour garantir une instantané cohérente des données.
Reserved
Réservé. Définit la valeur zéro.
HwCounters[MAX_HW_COUNTERS]
Tableau de structures HARDWARE_COUNTER_DATA qui contiennent les valeurs de compteur. Les éléments du tableau qui contiennent des données de compteur sont directement liés aux bits définis dans le masque de bits HardwareCounters que vous avez spécifié lorsque vous avez appelé la fonction EnableThreadProfiling . Par exemple, si vous définissez le bit 3 dans le masque de bits HardwareCounters , HwCounters[3] contient les données de compteur pour ce compteur.
Remarques
Vous devez initialiser les membres Size et Version avant d’appeler la fonction ReadThreadProfilingData pour lire les données de profilage.
Les données de profil contenues dans cette structure dépendent des données que vous avez demandées lorsque vous avez appelé la fonction ReadThreadProfilingData . Les membres suivants sont définis lorsque vous spécifiez l’indicateur READ_THREAD_PROFILING_FLAG_DISPATCHING :
- ContextSwitchCount
- CycleTime
- RetryCount
- WaitReasonBitMap
- HwCounters
- HwCountersCount
Configuration requise
Client minimal pris en charge | Windows 7 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau uniquement] |
En-tête | winnt.h (inclure Windows.h) |