Autor Beitrag
Hendrik
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 324



BeitragVerfasst: Di 08.07.03 20:03 
Hi,

ich müsste in meinem Proggi irgendwie eine aktion nach weniger als einer Millisekunden (genau 0.825 ms) ausführen. Wie könnte ich das denn machen? Mit einem Timer kann ich das ja nicht machen...
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 08.07.03 20:08 
Nimm einen Multimediatimer. Und kuck dir in diesem Zusammenhang auch mal QueryPerformanceCounter und QueryPerformanceFrequency an.

Oder nimm einen Thread und leg in jeweils mit Sleep die benötigten Millisekunden lahm.
tommie-lie
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 4373

Ubuntu 7.10 "Gutsy Gibbon"

BeitragVerfasst: Di 08.07.03 20:50 
Hendrik hat folgendes geschrieben:
weniger als einer Millisekunden (genau 0.825 ms) ausführen.

Luckie hat folgendes geschrieben:
Oder nimm einen Thread und leg in jeweils mit Sleep die benötigten Millisekunden lahm.

Habe ich was nicht mitbekommen oder ist dein Vorschlag ein wenig... falsch, Luckie?
Und wo nimmt man einen Multimediatimer her? Ich finde ihn zumindest nicht bei den Stnadard-Delphi-Komponenten...

Aber ein Thread ist schon ganz sinnvoll, darin kann man mit der vom Luckie erwähnten PerformanceCounter in einer Endlosschleife abfragen, wieviel Zeit vergangen ist (die Taktzeit des Performancecounter hängt zwar von der verwendeten Hardware ab, 0,825 ms sollten aber auf jedem System zu erreichen sein, wenn es nicht gerade ein 10 Jahre altes 386er-Board ist...). Ist die gewünschte Zeit erreicht, schickt entweder der Thread eine Message an dein Fenster, die du abfangen kannst (wie ein Timer), oder macht selber was.

_________________
Your computer is designed to become slower and more unreliable over time, so you have to upgrade. But if you'd like some false hope, I can tell you how to defragment your disk. - Dilbert
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 08.07.03 20:55 
Ach halt, das soll ja unter einer Millisekunde sein. Dan geht sleep natürlich nicht.

Die DirectX Kompos für Delphi haben einen dabei. Gibt es aber auch so bei Torry, denke ich.