QueryUnbiasedInterruptTime 함수(realtimeapiset.h)

현재 편견 없는 인터럽트 시간 수를 100나노초 단위로 가져옵니다. 편견 없는 인터럽트 시간 수는 시스템이 절전 모드 또는 최대 절전 모드에서 보내는 시간을 포함하지 않습니다.

구문

BOOL QueryUnbiasedInterruptTime(
  PULONGLONG UnbiasedTime
);

매개 변수

UnbiasedTime

TBD

반환 값

함수가 성공하면 반환 값이 0이 아닙니다. 함수가 null 매개 변수를 사용하여 호출되어 실패하면 반환 값은 0입니다.

설명

인터럽트 시간 수는 시스템이 시작될 때 0에서 시작하여 클록 틱의 길이에 따라 각 클록 인터럽트에서 증가합니다. 클록 틱의 정확한 길이는 기본 하드웨어에 따라 달라지며 시스템마다 다를 수 있습니다.

QueryUnbiasedInterruptTime 함수에서 검색한 인터럽트 시간 수는 시스템이 작업 상태에 있는 시간만 반영합니다. 따라서 인터럽트 시간 수는 시스템이 절전 모드 또는 최대 절전 모드에서 소비하는 시간에 따라 "편향"되지 않습니다. 시스템은 절전 모드 중에 만료된 상대 타이머가 절전 모드에서 즉시 만료되도록 하는 것과 같은 일부 작업에 편향된 인터럽트 시간을 사용합니다.

시스템 시간과 달리 인터럽트 시간 수는 사용자 또는 Windows 시간 서비스의 조정을 받지 않습니다. 애플리케이션은 인터럽트 시간 수를 사용하여 시스템 시간에서 가능한 것보다 더 미세한 기간을 측정할 수 있습니다. 인터럽트 시간 수보다 정밀도가 높은 애플리케이션은 고해상도 타이머를 사용해야 합니다. QueryPerformanceFrequency 함수를 사용하여 고해상도 타이머의 빈도를 검색하고 QueryPerformanceCounter 함수를 사용하여 카운터의 값을 검색합니다.

timeBeginPeriodtimeEndPeriod 함수에서 설정한 타이머 해상도는 QueryUnbiasedInterruptTime 함수의 해상도에 영향을 줍니다. 그러나 타이머 해상도를 높이면 프로세서가 절전 상태로 들어가지 못하게 하여 전반적인 시스템 성능을 줄이고 시스템 전력 소비를 늘릴 수 있기 때문에 권장되지 않습니다. 대신 애플리케이션은 고해상도 타이머를 사용해야 합니다.

참고QueryUnbiasedInterruptTime 함수는 인터럽트 시간 수와 틱 수가 약 49일 정도 진행되므로 Windows의 디버그("checked") 빌드에서 다른 결과를 생성합니다. 이렇게 하면 시스템이 오랫동안 실행될 때까지 발생하지 않을 수 있는 버그를 식별할 수 있습니다. 확인된 빌드는 MSDN (Microsoft Developer Network) 웹 사이트를 통해 MSDN 구독자가 사용할 수 있습니다.
 
이 함수를 사용하는 애플리케이션을 컴파일하려면 _WIN32_WINNT 0x0601 이상으로 정의합니다. 자세한 내용은 Windows 헤더 사용을 참조하세요.

요구 사항

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

참고 항목

인터럽트 시간

QueryInterruptTime

QueryInterruptTimePrecise

QueryUnbiasedInterruptTimePrecise

시스템 전원 상태

Windows 시간