Zeitmessen: QueryPerformanceCounter vs GetTickCount
- From: Jazzman_Marburg <jasmin.Bajric@xxxxxxx>
- Date: Mon, 11 Aug 2008 10:55:30 -0700 (PDT)
Hallo zusammen!
Stehe gerade mal wieder auf dem Schlauch:
Ich möchte den Zeitverbrauchn einer Routine messen und bekomme bei der
Verwendung von QueryPerformanceCounter immer 0 ms -- hingegen mit
GetTickCount 2516 ms?!
Die zu messende Routine enthält übrigens ein sleep (2000). Merkwürdig
nicht?
Ganz oben steht:
-------------------------
QueryPerformanceFrequency(FreqY);
Zu Anfang der Routine steht:
-----------------------------------------
QueryPerformanceCounter(Time1);
Zeit := GetTickCount;
Und am Schluss:
-------------------------
QueryPerformanceCounter(Time2);
FPerformanceList.Add (' Procname: ' + Format('%.f ms',[(Time2 -
Time1) * 1000 / FreqY]));
bzw:
FPerformanceList.Add('GetTicount ' + (IntToStr(GetTickCount - Zeit) +
' ms'));
Was ist da los? Sollte QueryPerformanceCounter eine besondere
Initialisierung benötigen?
Übrigens ist QueryPerformanceFrequency(FreqY) = 3579545.
Ändere ich die Formatierung auf 3 Stellen ('%.3f ms'), bekomme ich bei
QueryPerformance 0,065ms und im GetTickCount immernoch 2516 ms. Hä?
Kann mir jemand mal schnell auf die Sprünge helfen?
Danke & Gruß
Jasmin
.
- Follow-Ups:
- Re: Zeitmessen: QueryPerformanceCounter vs GetTickCount
- From: Hubert Seidel
- Re: Zeitmessen: QueryPerformanceCounter vs GetTickCount
- From: Markus Springweiler
- Re: Zeitmessen: QueryPerformanceCounter vs GetTickCount
- Prev by Date: Re: Page Control
- Next by Date: Re: Page Control
- Previous by thread: Page Control
- Next by thread: Re: Zeitmessen: QueryPerformanceCounter vs GetTickCount
- Index(es):
Relevant Pages
|
Loading