QueryPerformanceCounter 함수는 현재 cpu 틱을 받아 오는건데 i7 cpu에서 부스터 기능 때문에 제대로 동작하지 않을 가능성이 있다. 그렇다고 timeGetTime을 쓰자니 정밀하지 않고, 이래저래 생각 끝에 그래도 아직은 QueryPerformanceCounter를 써야 하지 않을까 싶다.

예제)
using namespace std;

double OutPutTime( const LARGE_INTEGER& freq, const LARGE_INTEGER& startTime, const LARGE_INTEGER& endTime )
{
return ((double)(endTime.QuadPart - startTime.QuadPart) / freq.QuadPart) * 1000;
}

int _tmain(int argc, _TCHAR* argv[])
{
LARGE_INTEGER freq, startTime, endTime;

QueryPerformanceCounter(&startTime); //시작시간


QueryPerformanceCounter(&endTime); //종료시간
_tprintf( TEXT("/%lf ms\n"),  OutPutTime( freq, startTime, endTime ) ); //경과시간


getchar();

return 0;
}

+ Recent posts