Condividi tramite


PERF_INSTANCE_DEFINITION struttura (winperf.h)

Descrive un'istanza di un oggetto prestazioni.

Sintassi

typedef struct _PERF_INSTANCE_DEFINITION {
  DWORD ByteLength;
  DWORD ParentObjectTitleIndex;
  DWORD ParentObjectInstance;
  LONG  UniqueID;
  DWORD NameOffset;
  DWORD NameLength;
} PERF_INSTANCE_DEFINITION, *PPERF_INSTANCE_DEFINITION;

Members

ByteLength

Dimensioni di questa struttura, incluso il nome dell'istanza che segue, in byte. Questo valore deve essere un multiplo a 8 byte.

ParentObjectTitleIndex

Indice del nome dell'oggetto padre nel database del titolo. Ad esempio, se l'oggetto è un thread, l'oggetto padre è un processo o se l'oggetto è un'unità logica, l'elemento padre è un'unità fisica.

ParentObjectInstance

Posizione dell'istanza all'interno dell'oggetto padre associato a questa istanza. La posizione è basata su zero.

UniqueID

Identificatore univoco che è possibile usare per identificare l'istanza anziché usare il nome per identificare l'istanza. Se non si usano identificatori univoci per distinguere le istanze del contatore, impostare questo membro su PERF_NO_UNIQUE_ID.

NameOffset

Offset dall'inizio di questa struttura al nome Unicode di questa istanza.

NameLength

Lunghezza del nome dell'istanza, incluso il terminatore Null, in byte. Questo membro è zero se l'istanza non ha un nome.

Non includere nella lunghezza alcuna spaziatura interna aggiunta al nome dell'istanza per assicurarsi che ByteLength sia allineato a un limite a 8 byte.

Commenti

L'oggetto contiene istanze se il membro NumInstances di PERF_OBJECT_TYPE è maggiore di zero. Usare il membro DefinitionLength di PERF_OBJECT_TYPE per trovare la prima istanza dell'oggetto. Per informazioni dettagliate, vedere Formato dati prestazioni.

I consumer devono usare il nome dell'istanza padre, se specificato, per creare un nome di istanza completo usato per la visualizzazione. La convenzione consiste nel formare il nome come padre/figlio.

I provider devono usare nomi di istanza univoci. In caso contrario, è difficile per i consumer calcolare e visualizzare i valori delle prestazioni perché non possono stabilire se l'istanza corrente fa riferimento alla stessa istanza eseguita in precedenza (le istanze possono venire e andare).

I provider devono allocare spazio sufficiente per il nome dell'istanza per assicurarsi che ByteLength sia allineato a un limite di 8 byte.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Intestazione winperf.h (includere Windows.h)

Vedi anche

PERF_OBJECT_TYPE