QueryPerformanceCounter als Zustandszähler
-
Gibts denn dann vielleicht einen einfachen Counter der hochauflösend ist?
-
Sorry ich meinte Timer.
-
Vieleicht kannst du uns dein Problem erklären, damit wir dir evtl. eine Alternativlösung bieten können die nicht auf einen µs Timer angewiesen ist.
Ansonsten ist der QueryPerformanceCounter das genauste was du bekommen kannst, aber eben nicht so einfach wie _matze schon sagte.
-
Im Grunde muss ich sehr schnell bestimmte Zustände erreichen um eine sehr genaue Ausgabe zu erhalten. Ich nutze eigentlich MFC, dachte aber das Thema passt hier besser da es ja nicht MFC speziell ist. Ich starte also etwas über einen Button und eine Anzeige gibt mir dann die Werte aus, wenn ich wieder stoppe soll der ganz genaue Wert angezeigt werden. Da ich aber 300 Werte pro 4 ms habe brauche ich eben eine sehr genaue Zählung. Verständlich?
Wenn ich einen Thread aufsetze und den dann so stark auslaste, gibt es dann nicht auch Ungenauigkeiten?
-
miamalzu schrieb:
Wenn ich einen Thread aufsetze und den dann so stark auslaste, gibt es dann nicht auch Ungenauigkeiten?
Ungenauigkeiten gibt es immer. Windows ist kein Echtzeit-OS. Du kannst lediglich versuchen, diese Ungenauigkeiten klein zu halten, indem du eine möglichst genaue Methode der Zeitmessung wählst (QPC), deinen Code schlank und performant gestaltest, und vielleicht das OS so nutzt, dass es möglichst wenig stört (denn nicht nur deine eigenen Threads können deinen Ablauf verzögern; ein wenig mehr Sicherheit verschafft das Heraufsetzen der Thread-/Prozesspriorität).
-
Im übrigen was die Genauigkeit von QueryPerformanceCounter betrifft:
http://support.microsoft.com/kb/274323Grüssli
-
Dravere schrieb:
Im übrigen was die Genauigkeit von QueryPerformanceCounter betrifft:
http://support.microsoft.com/kb/274323Grüssli
Ach, die Übersetzungen von MS sind doch immer noch die besten!
Ich werde immer ganz zittrig, wenn ich nicht auf Anhieb den Button zum Umstellen der Sprache erwische...
-
_matze schrieb:
Dravere schrieb:
Im übrigen was die Genauigkeit von QueryPerformanceCounter betrifft:
http://support.microsoft.com/kb/274323Grüssli
Ach, die Übersetzungen von MS sind doch immer noch die besten!
Ich werde immer ganz zittrig, wenn ich nicht auf Anhieb den Button zum Umstellen der Sprache erwische...
<pm>
<to>_matze</to>
<msg>Stell die gewünschte Sprache für Websites in deinem Browser um, dann musst du nicht mehr nach dem Button suchen ;)</msg>
</pm>Grüssli
-
Dieser Thread wurde von Moderator/in evilissimo aus dem Forum C++ in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
_matze schrieb:
Ungenauigkeiten gibt es immer. Windows ist kein Echtzeit-OS.
Stimmt! Aber auch ein Echtzeit-OS würde wenig helfen, da die X86 Architektur (also die Hardware) nicht echtzeitfähig ist.