Compartilhar via


estrutura PERFORMANCE_DATA (winnt.h)

Contém a criação de perfil de thread e os dados do contador de hardware solicitados.

Sintaxe

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;

Membros

Size

O tamanho desta estrutura.

Version

A versão dessa estrutura. Deve ser definido como PERFORMANCE_DATA_VERSION.

HwCountersCount

O número de elementos de matriz na matriz HwCounters que contêm dados do contador de hardware. Um valor de 3 significa que a matriz contém dados para três contadores de hardware, não que os elementos 0 a 2 contenham dados de contador.

ContextSwitchCount

O número de opções de contexto que ocorreram a partir do momento em que a criação de perfil foi habilitada.

WaitReasonBitMap

Uma máscara de bits que identifica os motivos das opções de contexto que ocorreram desde a última vez em que os dados foram lidos. Para obter valores possíveis, consulte a enumeração KWAIT_REASON (a enumeração está incluída no arquivo Wdm.h no WDK).

CycleTime

O tempo de ciclo do thread (exclui o tempo gasto interrompido) do tempo em que a criação de perfil foi habilitada.

RetryCount

O número de vezes que a operação de leitura lê os dados para garantir uma instantâneo consistente dos dados.

Reserved

Reservado. Defina como zero.

HwCounters[MAX_HW_COUNTERS]

Uma matriz de estruturas HARDWARE_COUNTER_DATA que contêm os valores do contador. Os elementos da matriz que contêm dados de contador se relacionam diretamente com os bits definidos na máscara de bits HardwareCounters especificada quando você chamou a função EnableThreadProfiling . Por exemplo, se você definir o bit 3 na máscara de bits HardwareCounters , HwCounters[3] conterá os dados do contador para esse contador.

Comentários

Você deve inicializar os membros Size e Version antes de chamar a função ReadThreadProfilingData para ler os dados de criação de perfil.

Os dados de perfil contidos nessa estrutura dependem dos dados solicitados quando você chamou a função ReadThreadProfilingData . Os seguintes membros são definidos quando você especifica o sinalizador READ_THREAD_PROFILING_FLAG_DISPATCHING:

  • ContextSwitchCount
  • CycleTime
  • RetryCount
  • WaitReasonBitMap
Os seguintes membros são definidos quando você especifica o sinalizador READ_THREAD_PROFILING_FLAG_HARDWARE_COUNTERS:
  • HwCounters
  • HwCountersCount

Requisitos

   
Cliente mínimo com suporte Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Cabeçalho winnt.h (inclua Windows.h)

Confira também

ReadThreadProfilingData