Einzelnen Beitrag anzeigen

valjah

Registriert seit: 13. Nov 2006
19 Beiträge
 
Delphi 7 Personal
 
#9

Re: Parallelport-Abfrage mit Timeout

  Alt 26. Mär 2009, 20:05
Ich habe meine "Schleifenmessung" gerade nochmal ein bisschen systematisiert und siehe da: in 100.000 Durchläufen komme ich durchschnittlich auf 245 Runden mit einer Zeit von 1 ms oder mehr (der Rest liegt darunter). Kritisch ist vor allen Dingen das "oder mehr". Denn einzelne Schleifendurchläufe benötigen bis zu 10 ms. Das ist zwar bloß eine aus 100.000, aber möglicherweise erwische ich die ja gerade, wenn die Versuchsperson reagiert. Und eine Verzerrung um 10 ms ist außerhalb der Toleranzgrenze.
Nun habe ich die ganze Prozedur mal auf HIGH_PRIORITY_CLASS und THREAD_PRIORITY_HIGHEST gesetzt (REALTIME bzw. TIME_CRITICAL habe ich mich noch nicht getraut). Und siehe da: es gibt zwar immer noch durchschnittlich 260 (aus 100.000) Runden mit einer Laufzeit von 1 ms, aber keine einzige mehr darüber. Das erscheint mir durchaus praktikabel. Und ich weiß jetzt auch: im Mittel schafft mein Rechner 385 dieser Loops pro Millisekunde...

Zitat:
Du willst die Reaktion von Menschen testen. Welche Abweichungen sind denn dann zulässig?
Also, da wir kognitionspsychologische Experimente durchführen, bei denen sich die durchschnittlichen Reaktionszeiten zwischen unterschiedlichen Bedingungen teilweise nur um 20 ms unterscheiden (das aber zuverlässig), ist eine Genauigkeit auf 1 ms schon wichtig. Nanosekunden interessieren mich nicht.

Zitat:
Du möchtest ein Progamm auf einem Betriebssystem schreiben. Wenn dein Programm läuft soll es sich aber lieber raus halten. Frommer Wunsch.
Man kann ja wenigstens versuchen, das Bestmögliche herauszuholen. Am Ende wird es immer ein Kompromiss sein.

Gruß, Valentin
  Mit Zitat antworten Zitat