Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Auf Timer verlassen? (https://www.delphipraxis.net/150227-auf-timer-verlassen.html)

DarkItachi 10. Apr 2010 22:36


Auf Timer verlassen?
 
Hi,

Kann man sich auf einen Timer verlassen?
Also ich meine, ich muss eine reelle Sekunde warten...
Macht der Timer die 1000ms wahrheitsgetreu?

Oder kann der Wert durch die Leistung des PC's variieren?

Naja, schon mal dickes Danke wie immer!

MfG

SirThornberry 10. Apr 2010 22:44

Re: Auf Timer verlassen?
 
Du kannst dich auf den Timer genauso wenig wie auf alles andere verlassen wenn du Millisekunden genau arbeiten willst. Windows ist ein Multitasking Betriebssystem und somit kann es sein das in der Millisekunde dein Programm gar keine Rechenzeit bekommt und somit den Moment verpasst.

fatalerror 10. Apr 2010 22:46

Re: Auf Timer verlassen?
 
Ein normaler Timer wird bei Windows nicht prioritär behandelt - somit darf sich ein Programm nicht auf das genaue Eintreffen des Ereignisses verlassen. Es sollte aber Alternativen zum normalen Timer geben. Suche mal nach Multimediatimer.zb. hier Wichtig ist aber zu wissen, das Windows nicht ein Echtzeitbetriebssystem ist.

Lumpiluk 10. Apr 2010 22:47

Re: Auf Timer verlassen?
 
Zitat:

Zitat von DarkItachi
Also ich meine, ich muss eine reelle Sekunde warten...

Ich kann mir nicht so ganz vostellen, worauf und wofür...
Vielleicht kann man das anders lösen?

Christian Seehase 10. Apr 2010 22:48

Re: Auf Timer verlassen?
 
Moin,

auf den Timer würde ich mich nicht verlassen, zumal Windows kein Echtzeitbetriebssystem ist.
Der MSDN-Library durchsuchenMultimedia Timer soll präziser sein, aber Abweichungen können auch bei diesem Auftreten.

XXcD 10. Apr 2010 22:55

Re: Auf Timer verlassen?
 
Es gibt eine Möglichkeit mit Delphi punktgenaue Timer zu nutzen.

Ich müsste mal nachschauen wie das hieß, das ist eine Software die sich in den Kernel von Windows einklinkt und damit kann man beispielsweise Skriptsprache, C++ und Delphi nutzen.

DarkItachi 10. Apr 2010 23:00

Re: Auf Timer verlassen?
 
Brauchen tue ich das nicht. Ich wollte einfach nur mal wissen, ob man es kann.
Aber hier erhält man ja genug Informationen!

Ich brauche nur ein Timer, der etwa jede Sekunde die Label Caption um 1 verringert.

Aber jetzt weiß ich ja Bescheid!
Thx

€d1t: Noch etwas, was ich gerne wissen möchte.. Erstellt ein Timer einen Thread?

Delphi-Laie 10. Apr 2010 23:11

Re: Auf Timer verlassen?
 
Zitat:

Zitat von DarkItachi
€d1t: Noch etwas, was ich gerne wissen möchte.. Erstellt ein Timer einen Thread?

Nein, er löst nur intervallweise eine Aktion (Prozedur) aus. Diese sollte möglichst abgearbeitet sein, wenn sie - bzw. eine neue Version davon - aufgerufen wird, ansonsten kommt es natürlich zu zeitlichen Überschneidungen. Oder es wird die Neuauslösung blockiert, genau weiß ich es nicht.

An XXcD: Das würde mich auch interessieren.

DarkItachi 10. Apr 2010 23:22

Re: Auf Timer verlassen?
 
Aber der Timer muss das Intervall ja auch zählen.
Dafür müsste doch ein Thread erstellt werden..
Sonst würde das Programm ja dauernd flackern oder so..

Oder sehe ich das falsch?

Valle 10. Apr 2010 23:28

Re: Auf Timer verlassen?
 
Der Timer benutzt eine WinAPI Funktion, die Windows das zählen überläst. Windows benachrichtigt dein Programm (den Timer) dann mit Hilfe einer Window Message über das Auslösen der Timer-Funktion. Somit ist der Timer nicht-blockend. :-)

Liebe Grüße,
Valle


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:08 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz