GetThreadTimes 함수(processthreadsapi.h)
지정된 스레드에 대한 타이밍 정보를 검색합니다.
구문
BOOL GetThreadTimes(
[in] HANDLE hThread,
[out] LPFILETIME lpCreationTime,
[out] LPFILETIME lpExitTime,
[out] LPFILETIME lpKernelTime,
[out] LPFILETIME lpUserTime
);
매개 변수
[in] hThread
타이밍 정보를 찾는 스레드에 대한 핸들입니다. 핸들에는 THREAD_QUERY_INFORMATION 또는 THREAD_QUERY_LIMITED_INFORMATION 액세스 권한이 있어야 합니다. 자세한 내용은 스레드 보안 및 액세스 권한을 참조하세요.
Windows Server 2003 및 Windows XP: 핸들에 THREAD_QUERY_INFORMATION 액세스 권한이 있어야 합니다.
[out] lpCreationTime
스레드의 생성 시간을 수신하는 FILETIME 구조체에 대한 포인터입니다.
[out] lpExitTime
스레드의 종료 시간을 수신하는 FILETIME 구조체에 대한 포인터입니다. 스레드가 종료되지 않은 경우 이 구조체의 내용이 정의되지 않습니다.
[out] lpKernelTime
스레드가 커널 모드에서 실행된 시간을 수신하는 FILETIME 구조체에 대한 포인터입니다.
[out] lpUserTime
스레드가 사용자 모드에서 실행된 시간을 수신하는 FILETIME 구조체에 대한 포인터입니다.
반환 값
함수가 성공하면 반환 값이 0이 아닙니다.
함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.
설명
모든 시간은 FILETIME 데이터 구조를 사용하여 표현됩니다. 이러한 구조체에는 100나노초 시간 단위의 64비트 수를 형성하기 위해 결합되는 두 개의 32비트 값이 포함됩니다.
스레드 생성 및 종료 시간은 1601년 1월 1일 자정부터 영국 그리니치에서 경과된 시간으로 표현되는 시간 포인트입니다. 애플리케이션에서 이러한 값을 보다 일반적으로 유용한 양식으로 변환하는 데 사용할 수 있는 몇 가지 함수가 있습니다. 시간 함수를 참조하세요.
스레드 커널 모드 및 사용자 모드 시간은 시간입니다. 예를 들어 스레드가 커널 모드에서 1초를 소비한 경우 이 함수는 lpKernelTime에 지정된 FILETIME 구조를 64비트 값 1천만으로 채웁니다. 이는 1초 안에 100나노초 단위의 수입니다.
스레드에서 사용하는 CPU 클록 주기 수를 검색하려면 QueryThreadCycleTime 함수를 사용합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | processthreadsapi.h(Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2에 Windows.h 포함) |
라이브러리 | Kernel32.lib |
DLL | Kernel32.dll |