다음을 통해 공유


EnableThreadProfiling 함수(winbase.h)

지정된 스레드에서 스레드 프로파일링을 사용하도록 설정합니다.

구문

DWORD EnableThreadProfiling(
  [in]  HANDLE  ThreadHandle,
  [in]  DWORD   Flags,
  [in]  DWORD64 HardwareCounters,
  [out] HANDLE  *PerformanceDataHandle
);

매개 변수

[in] ThreadHandle

프로파일링을 사용하도록 설정할 스레드에 대한 핸들입니다. 현재 스레드여야 합니다.

[in] Flags

컨텍스트 스위치 수와 같은 스레드 프로파일링 데이터를 받으려면 이 매개 변수를 THREAD_PROFILING_FLAG_DISPATCH 설정합니다. 그렇지 않으면 0으로 설정합니다.

[in] HardwareCounters

하드웨어 성능 카운터 데이터를 수신하려면 이 매개 변수를 수집할 하드웨어 카운터를 식별하는 비트 마스크로 설정합니다. 최대 16개의 성능 카운터를 지정할 수 있습니다. 각 비트는 구성한 하드웨어 성능 카운터에 대한 0부터 시작하는 하드웨어 카운터 인덱스에 직접 연결됩니다. 하드웨어 카운터 데이터를 수집하지 않는 경우 0으로 설정합니다. 구성되지 않은 하드웨어 카운터에 대해 비트를 설정하는 경우 해당 카운터에 대해 읽은 카운터 값은 0입니다.

[out] PerformanceDataHandle

ReadThreadProfilingDataDisableThreadProfiling 함수를 호출할 때 사용하는 불투명 핸들입니다.

반환 값

호출이 성공하면 ERROR_SUCCESS 반환합니다. 그렇지 않으면 시스템 오류 코드(Winerror.h 참조)입니다.

설명

스레드를 종료하기 전에 DisableThreadProfiling 함수를 호출해야 합니다.

하드웨어 성능 카운터를 프로파일하려면 카운터를 구성하는 드라이버가 필요합니다. 성능 카운터는 시스템에 대해 전역적으로 구성되므로 모든 스레드는 동일한 하드웨어 카운터 데이터에 액세스할 수 있습니다. 프로파일링을 사용하도록 설정하기 전에 카운터를 구성해야 합니다. 하드웨어 성능 카운터를 구성하는 방법에 대한 자세한 내용은 WDK(Windows 드라이버 키트)의 KeSetHardwareCounterConfiguration 함수를 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 winbase.h(Windows.h 포함)
라이브러리 Kernel32.lib
DLL Kernel32.dll

참고 항목

DisableThreadProfiling

QueryThreadProfiling

ReadThreadProfilingData