Share via


PERF_COUNTER_IDENTIFIER Struktur (perflib.h)

Enthält Informationen zum PERF_COUNTER_IDENTIFIER-Block , der die Struktur enthält. Ein PERF_COUNTER_IDENTIFIER-Block enthält Informationen zu einer Leistungsindikatorspezifikation und besteht aus den folgenden Elementen in der Reihenfolge:

  1. Eine PERF_COUNTER_IDENTIFIER-Struktur
  2. Eine optionale NULL-beendete UTF-16LE-Zeichenfolge, die den instance Namen angibt
  3. Nach Bedarf auffüllen, um die Größe des Blocks auf ein Vielfaches von 8 Bytes zu stellen.

Syntax

typedef struct _PERF_COUNTER_IDENTIFIER {
  GUID  CounterSetGuid;
  ULONG Status;
  ULONG Size;
  ULONG CounterId;
  ULONG InstanceId;
  ULONG Index;
  ULONG Reserved;
} PERF_COUNTER_IDENTIFIER, *PPERF_COUNTER_IDENTIFIER;

Member

CounterSetGuid

Die GUID des Leistungsindikatorsatzes.

Status

Ein Fehlercode, der angibt, ob der Vorgang zum Hinzufügen oder Löschen eines Leistungsindikators erfolgreich oder fehlgeschlagen ist.

Size

Die Gesamtgröße des PERF_COUNTER_IDENTIFIER Blocks in Bytes. Die Gesamtgröße des Blocks ist die Summe der Größen der PERF_COUNTER_IDENTIFIER-Struktur, der Zeichenfolge, die den instance Namen angibt, und der Auffüllung.

CounterId

Der Bezeichner des Leistungsindikators. PERF_WILDCARD_COUNTER gibt alle Indikatoren an.

InstanceId

Der Instanzbezeichner. Geben Sie 0xFFFFFFFF an, wenn Sie die Ergebnisse nicht basierend auf dem bezeichner instance filtern möchten.

Index

Die Position in der Sequenz von PERF_COUNTER_IDENTIFIER Blöcken, an der die Zählerdaten zurückgegeben werden, die diesem PERF_COUNTER_IDENTIFIER Block entsprechen. Wird von PerfQueryCounterInfo festgelegt.

Reserved

Reserviert.

Hinweise

Wenn Sie einen Indikatorsatzbezeichner für einen Einzelnen instance-Zählersatz angeben, dürfen Sie den instance Namen nicht in den zusätzlichen Daten des PERF_COUNTER_IDENTIFIER-Blocks angeben. Die Größe des PERF_COUNTER_IDENTIFIER Blocks muss die Größe der PERF_COUNTER_IDENTIFIER-Struktur sein.

Wenn Sie hingegen einen Zählersatzbezeichner für einen Zählersatz mit mehreren instance angeben, müssen Sie den instance Namen in den zusätzlichen Daten des PERF_COUNTER_IDENTIFIER-Blocks angeben. Der Bezeichner ist nicht gültig, es sei denn, die Größe des PERF_COUNTER_IDENTIFIER-Blocks ist größer als die Größe der PERF_COUNTER_IDENTIFIER-Struktur . Wenn Sie die Indikatorensätze nicht basierend auf dem instance Namen filtern möchten, verwenden Sie PERF_WILDCARD_INSTANCE als instance Namen.

Die Funktionen PerfAddCounters und PerfDeleteCounters akzeptieren eine Sequenz von PERF_COUNTER_IDENTIFIER Blöcken, um die Leistungsindikatoren zu definieren, die Sie einer Abfrage hinzufügen oder entfernen möchten.

Die PerfQueryCounterInfo-Funktion ruft eine Sequenz von PERF_COUNTER_IDENTIFIER Blöcken ab, um die Leistungsindikatorenspezifikationen in einer Abfrage anzugeben und im Indexelement die Reihenfolge anzugeben, in der die Abfrage die Ergebnisse erhält.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 10, Version 1607 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2016 [nur Desktop-Apps]
Kopfzeile perflib.h

Weitere Informationen

PerfAddCounters

PerfDeleteCounters

PerfQueryCounterInfo