다음을 통해 공유


PERF_OBJECT_TYPE 구조체(winperf.h)

개체별 성능 정보(예: 개체 인스턴스 수 및 개체가 정의하는 카운터 수)를 설명합니다.

구문

typedef struct _PERF_OBJECT_TYPE {
  DWORD         TotalByteLength;
  DWORD         DefinitionLength;
  DWORD         HeaderLength;
  DWORD         ObjectNameTitleIndex;
#if ...
  DWORD         ObjectNameTitle;
#else
  LPWSTR        ObjectNameTitle;
#endif
  DWORD         ObjectHelpTitleIndex;
#if ...
  DWORD         ObjectHelpTitle;
#else
  LPWSTR        ObjectHelpTitle;
#endif
  DWORD         DetailLevel;
  DWORD         NumCounters;
  LONG          DefaultCounter;
  LONG          NumInstances;
  DWORD         CodePage;
  LARGE_INTEGER PerfTime;
  LARGE_INTEGER PerfFreq;
} PERF_OBJECT_TYPE, *PPERF_OBJECT_TYPE;

멤버

TotalByteLength

개체별 데이터의 크기(바이트)입니다. 이 멤버는 이 구조체의 시작 부분에서 다음 PERF_OBJECT_TYPE 구조체(있는 경우)로의 오프셋입니다.

DefinitionLength

이 구조체의 크기와 모든 의 크기
PERF_COUNTER_DEFINITION 구조체.

개체가 여러 instance 개체인 경우(NumInstances 멤버가 0이 아닌 경우) 이 멤버는 이 구조체의 시작부터 첫 번째 PERF_INSTANCE_DEFINITION 구조체까지의 오프셋입니다. 그렇지 않으면 이 값은 PERF_COUNTER_BLOCK 오프셋입니다.

HeaderLength

이 구조체의 크기(바이트)입니다. 이 멤버는 이 구조체의 시작부터 첫 번째 PERF_COUNTER_DEFINITION 구조체까지의 오프셋입니다.

ObjectNameTitleIndex

타이틀 데이터베이스의 개체 이름에 대한 인덱스입니다. 인덱스 를 사용하여 개체의 이름을 검색하는 방법에 대한 자세한 내용은 카운터 이름 및 도움말 텍스트 검색을 참조하세요.

공급자는 초기화 파일에서 인덱스 값을 지정합니다. 자세한 내용은 레지스트리에 카운터 이름 및 설명 추가를 참조하세요.

ObjectNameTitle

예약되어 있습니다.

ObjectHelpTitleIndex

제목 데이터베이스에 있는 개체의 도움말 텍스트에 대한 인덱스입니다. 인덱스 를 사용하여 개체의 도움말 텍스트를 검색하는 방법에 대한 자세한 내용은 카운터 이름 및 도움말 텍스트 검색을 참조하세요.

공급자는 초기화 파일에서 인덱스 값을 지정합니다. 자세한 내용은 레지스트리에 카운터 이름 및 설명 추가를 참조하세요.

ObjectHelpTitle

예약되어 있습니다.

DetailLevel

세부 정보 수준입니다. 소비자는 이 값을 사용하여 표시 복잡성을 제어합니다. 이 값은 지정된 개체에 대한 모든 카운터의 최소 세부 정보 수준입니다. 이 멤버는 다음 값 중 하나일 수 있습니다.

세부 정보 수준 의미
PERF_DETAIL_NOVICE
카운터 데이터는 모든 사용자에 대해 제공됩니다.
PERF_DETAIL_ADVANCED
카운터 데이터는 고급 사용자를 위해 제공됩니다.
PERF_DETAIL_EXPERT
카운터 데이터는 전문 사용자를 위해 제공됩니다.
PERF_DETAIL_WIZARD
카운터 데이터는 시스템 디자이너에 대해 제공됩니다.

NumCounters

개체에서 반환하는 PERF_COUNTER_DEFINITION 블록 수입니다.

DefaultCounter

성능 도구에서 이 개체를 선택할 때 정보를 표시할 기본 카운터의 제목 데이터베이스에 있는 카운터의 이름을 인덱싱합니다. 이 멤버는 기본값이 없음을 나타내기 위해 –1일 수 있습니다.

NumInstances

카운터가 제공되는 개체 인스턴스의 수입니다. 개체에 인스턴스가 0개 이상 있을 수 있지만 현재 인스턴스가 없는 경우 이 값은 0이어야 합니다. 개체에 여러 인스턴스가 있을 수 없는 경우 이 값은 PERF_NO_INSTANCES 합니다.

CodePage

instance 문자열이 유니코드 문자열인 경우 이 멤버는 0입니다. 그렇지 않으면 이 멤버는 instance 이름의 코드 페이지 식별자입니다. MultiByteToWideChar를 호출할 때 코드 페이지 값을 사용하여 문자열을 유니코드로 변환할 수 있습니다.

PerfTime

소비자가 카운터 값을 계산할 때 사용하는 공급자 생성 타임스탬프입니다. 예를 들어 이는 고해상도 성능 카운터의 현재 값(개수)일 수 있습니다.

공급자는 카운터의 카운터 유형에 PERF_OBJECT_TIMER 플래그가 포함된 경우 이 값을 제공해야 합니다. 그렇지 않으면 소비자는 PERF_DATA_BLOCKPerfTime 값을 사용합니다.

PerfFreq

소비자가 카운터 값을 계산할 때 사용하는 공급자 생성 빈도 값입니다. 예를 들어 이는 고해상도 성능 카운터의 현재 빈도(초당 수)일 수 있습니다.

공급자는 카운터의 카운터 유형에 PERF_OBJECT_TIMER 플래그가 포함된 경우 이 값을 제공해야 합니다. 그렇지 않으면 소비자는 PERF_DATA_BLOCKPerfFreq 값을 사용합니다.

설명

공급자는 이 구조를 사용하여 지원하는 개체에 대한 성능 데이터를 제공합니다. 소비자는 이 구조를 사용하여 쿼리한 개체에 대한 성능 데이터를 사용합니다.

이 구조체 뒤에는 성능 개체에 대해 정의된 각 카운터에 대해 하나씩 PERF_COUNTER_DEFINITION 구조 목록이 표시됩니다. 성능 데이터 블록의 레이아웃에 대한 자세한 내용은 성능 데이터 형식을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
머리글 winperf.h(Windows.h 포함)

추가 정보

PERF_COUNTER_DEFINITION

PERF_DATA_BLOCK

성능 데이터 형식