PERF_MULTI_INSTANCES structure (perflib.h)

Provides information about the PERF_MULTI_INSTANCES block that contains the structure. A PERF_MULTI_INSTANCES block indicates the number of instances for which results are provided as part of the PERF_COUNTER_HEADER block in multiple-instance query. The PERF_MULTI_INSTANCES block consists of the following items in order:

  1. A PERF_MULTI_INSTANCES structure
  2. A number of instance data blocks. The number of instance data blocks that the PERF_MULTI_INSTANCES block contains is indicated ny the dwInstances member of the PERF_MULTI_INSTANCES structure. Each instance data block consists of the following items in order:
    1. A PERF_INSTANCE_HEADER block
    2. A number of PERF_COUNTER_DATA blocks. The number of PERF_COUNTER_DATA blocks depends on the context:

Syntax

typedef struct _PERF_MULTI_INSTANCES {
  ULONG dwTotalSize;
  ULONG dwInstances;
} PERF_MULTI_INSTANCES, *PPERF_MULTI_INSTANCES;

Members

dwTotalSize

The total size of the PERF_MULTI_INSTANCES block, in bytes. This total size is the sum of the sizes of the PERF_MULTI_INSTANCES structure and the instance data blocks.

dwInstances

The number of instance data blocks in the PERF_MULTI_INSTANCES block.

Remarks

The PerfQueryCounterData function gets a PERF_DATA_HEADER block that may contain PERF_MULTI_INSTANCES blocks within the PERF_COUNTER_HEADER block.

Requirements

Requirement Value
Minimum supported client Windows 10, version 1607 [desktop apps only]
Minimum supported server Windows Server 2016 [desktop apps only]
Header perflib.h

See also

PERF_COUNTER_HEADER

PERF_DATA_HEADER

PerfQueryCounterData