HSG |
|
Eine einfache Zeitmessung (Auflösung: 10ms) läßt sich mit "GetTickCount" realisieren.
.... at := GetTickCount; // Anfangszeit // hier wird etwas erledigt, was Zeit kostet et := GetTickCount; // Endzeit ...... eIterZeit.text := IntToStr(et-at); // Zeit et-at in Ticks ....
Wesentlich genauer ist der Hochauflösungszähler (Auflösung: 0,00083ms) (R150,[DK]):
.... c,n1,n2 : TLargeInteger; .... QueryPerformanceFrequency(c); // Auflösung bestimmen .... QueryPerformanceCounter(n1); // hier wird etwas erledigt, was Zeit kostet QueryPerformanceCounter(n2); .... eIterZeit.text := Format('%g',[(n2-n1)/c ]); // Zeit (n2-n1)/c in s ....
In obigem Quelltext-Auszug wird die Funktion Format zur Formatierung der Ausgabe verwendet.