Genaue Zeit - welche Methode ist besser

Hallo

Ich brauche in meinem Visual C++ Programm eine moeglichst genaue Zeit (auf wenige Millisekunden genau). Dabei ist es egal, ob das eine relative oder eine absolute Zeit ist.

Welche Mehtode ist besser geeignet ?

clock

oder

GetSystemTime

oder was schlagt Ihr vor ?

Danke sagt
Martin

Hallo Martin,

Ich brauche in meinem Visual C++ Programm eine moeglichst
genaue Zeit (auf wenige Millisekunden genau). Dabei ist es
egal, ob das eine relative oder eine absolute Zeit ist.

oder was schlagt Ihr vor ?

Ein anderes Betriebssystem.

Windows ist nicht echzeitfähig, da bekommst du deine Genaugkeit nicht mit Garantie hin.

MfG Peter(TOO)

du kannst die Zeit mit PerformanceCounter sehr genau messen (je nachdem welche Hardware im PC verbaut ist, der Zeitraster ist auf jedenfall viel kleiner als 1 mSec (je nach lFreq)).

LARGE_INTEGER lStart, lEnd, lFreq;
QueryPerformanceFrequency(&lFreq);
QueryPerformanceCounter(&lStart);

tu irgendwas…

QueryPerformanceCounter(&lEnd);
int ms=((lEnd.QuadPart - lStart.QuadPart) * 1000) / lFreq.QuadPart;

Hallo,

Allerdings misst du bei deinem Beispiel die Laufzeit von „tu irgendwas…“ nicht die CPU-Zeit für diesen Code.

Die gemessene Zeit beinhaltet auch die Laufzeit für alle Interrupts und, wegen dem premtiven Multitasking, auch die welche Windows für alle anderen Tätigkeiten und andere Tasks aufgewendet hat.

MfG Peter(TOO)

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]