und schon läuft es wie es soll. Bei 5 Sekunden hat man +- 50ms. Das ist in Ordnung.
DU solltest dich aber generell nicht drauf verlassen !
Lass mal den virenscanner per volle suche im Vordergrund laufen, windows updater, den prime CPU test auf allen cores und log nebenher aufn anderen account auf der maschine ein ^^
Dann ist nix mehr mit +-50 ms, dann koennens auch +- 50 sek sein
Du bekommst beim "Normalen" OS keine genauen timer ... egal mit welcher Methode ...
Die einzige Möglichkeit ist nen Echtzeitbetriebssystem. Da bekommst auch zu definierten Intervallen garantiert den Focus und drafst code ausführen (als echtzeitmodul).
aber 50 ms sicher ned ^^ und QTimer funkt da auch ned anders.
Unabhaengig vom Processor Scope werden timerevents in die Nachrichtenschleife gehangen ... und wenn in der nen Aufruf drinhängt der lange blockiert, wars das dann auch wieder.
etwas genauere timer die nur vom Prozessorscope abhaengig sind, gehen nur ueber Threading ... und Qtimer ist nur der billige ersatz dafür (und erspart dir ne Menge Aufwand ).
nachteil (oder sidenote) , man kann selber dern eigenen timer toll ausbremsen ....
Also auf die Timerintervalle nie verlassen, die sorgen nur dafuer das ab und an mal den focus bekommst.
die "korrekten" aktuelle zeit musst dir eh nachkorrigeren, wenn für messaufgaben oder timestamps etc ...
das machst am besten mit dem Processorzähler (aka multimedia timer, Querperformancecounter ... etc)
QElapsedTimer macht das ja impliziet schon ...
Ciao ....