Kurze Pause einlegen
-
Hi,
ich muss in meiner Applikation eine Pause <10 msec einlegen (teilweise auch kleiner 1 msec). Diese Pause sollte dabei möglichst genau eingehalten werden und darf dafür aber auch Rechenzeit verbrauchen. Mit normalen Windows-Bordmitteln geht das ja nicht. Welche Lösungsmöglichkeiten gibt es?
-
-
Eine Möglichkeit ist auch die Suche in der MSDN nach
QueryPerformanceFrequency
QueryPerformanceCounterHier musst allerdings selbst ne Prüfung vornehmen, bis eine bestimmte Zeit abgelaufen ist.
-
Z schrieb:
z.B. diese: http://msdn.microsoft.com/de-de/library/ms682492(en-us,VS.85).aspx
Damit kann man auch nicht genauer warten als mit z.B. Sleep().
-
hustbaer schrieb:
Z schrieb:
z.B. diese: http://msdn.microsoft.com/de-de/library/ms682492(en-us,VS.85).aspx
Damit kann man auch nicht genauer warten als mit z.B. Sleep().
Waitable Timers haben eine 100ns Auflösung.
-
Z schrieb:
hustbaer schrieb:
Z schrieb:
z.B. diese: http://msdn.microsoft.com/de-de/library/ms682492(en-us,VS.85).aspx
Damit kann man auch nicht genauer warten als mit z.B. Sleep().
Waitable Timers haben eine 100ns Auflösung.
Du kannst es in 100ns Schritten angeben, aber die effektive Auflösung ist die der System-Clock, und die ist typischerweise 15ms.
-
hustbaer schrieb:
Du kannst es in 100ns Schritten angeben, aber die effektive Auflösung ist die der System-Clock, und die ist typischerweise 15ms.
Findet man diese Einschränkung irgendwo im MSDN? Da steht nur:
The actual timer accuracy depends on the capability of your hardware.
Wenn die Auflösung wirklich so schlecht ist, dann: http://msdn.microsoft.com/en-us/library/dd757664(VS.85).aspx
-
Mit den Multimedia-Timern kommst du auch nur auf 1 bzw. 2 ms runter.
Vor allem hast du nen Jitter von 1-2 ms, was für den OP wohl auch ein KO darstellen dürfte.
-
hustbaer schrieb:
Vor allem hast du nen Jitter von 1-2 ms, was für den OP wohl auch ein KO darstellen dürfte.
Ja, das ist ein KO. Aktuell sieht die Geschichte mit den Performance-Countern für mich am vielversprechendsten aus, allerdings fürchte ich, das der lahme Thread-Scheduler mir da wieder reinhaut
