Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Delphi Befehlslaufzeit (https://www.delphipraxis.net/118723-delphi-befehlslaufzeit.html)

rich123 13. Aug 2008 16:37


Delphi Befehlslaufzeit
 
Hallo zusammen,

Ich wollte fragen ob jemand eine Liste hat / kennt, wo drin steht wieviel Zeit ein Befehlt braucht um abgearbeitet zu werden.
Aber ich denke das wird stark von der Rechenleistung abhängig sein oder? Oder gibts dann vllt eine Mindestabarbeitzeit?

Das Problem ist nämlich, dass ich mein Sleep ziemlich auf die ms genau timen muss.
Wenn ich habe:

Delphi-Quellcode:
//irgendein Befehl1
//irgendein Befehl2
Sleep(50-Befehl1.Abarbeitungszeit-Befehl2.Abarbeitungszeit)
Kann mir jemand weiterhelfen?

Vielen Dank

Bernhard Geyer 13. Aug 2008 16:39

Re: Delphi Befehlslaufzeit
 
Ich denke dein Ansatz ist bei einem Nicht-Echtzeitbetriebssystem wie Windows Falsch.

Im Notfall könntest du mit GetTickCount arbeiten

mkinzler 13. Aug 2008 16:40

Re: Delphi Befehlslaufzeit
 
Dann ist sleep() schon mal total falsch. Schau dir mal GetTickCount an

hathor 13. Aug 2008 18:44

Re: Delphi Befehlslaufzeit
 
Liste der Anhänge anzeigen (Anzahl: 1)
Guckst Du hier:

HURRA ! 300. Beitrag!

Noedel 15. Aug 2008 15:52

Re: Delphi Befehlslaufzeit
 
Jo, mit GetTickcont solltes funktionieren

Einfach drei variablen dafür erstellen und eine vor die Procedure und eine dahinter setzen, also


Code:
Zeitvor:=gettickcount;
//(deine Procedure)
Zeitnach:=gettickcount;
zeitgesamt:=zeitnach-zeitvor;
LabelAusgabe.caption:=inttostr(zeit div 1000)+','+inttostr(zeit mod 1000)+' s';
Dann hastes in Sekunden angezeigt ;)

Cyberbob 15. Aug 2008 16:33

Re: Delphi Befehlslaufzeit
 
Wofür bracuhst man das? Wenn man nicht grad mit Threads arbeitet, wird in Delphi ein Befehl nach dem anderen Ausgeführt. Ausserdem kommt es auch immer darauf an, was die CPU grad zu tun hat, du wirst also bei jedem Test eine andere Zeit raus gekommen!

divBy0 15. Aug 2008 16:35

Re: Delphi Befehlslaufzeit
 
Befehlslaufzeit in Sekunden? Ist natürlich abhängig von der Prozedur, aber eine Anzeige als Millisekunden ist da vielleicht besser.

Noedel 15. Aug 2008 16:39

Re: Delphi Befehlslaufzeit
 
ja, GetTickCount liefert doch ms

Ich habe das nur dann in sekunden umgewandelt... also dann zb. 2,123 Sekunden statt 2123ms

FAlter 15. Aug 2008 17:10

Re: Delphi Befehlslaufzeit
 
Hi,

Zitat:

Zitat von Noedel
also dann zb. 2,123 Sekunden statt 2123ms

Oder 2,1 s statt 2001 ms (2,100 s für 2100 ms). Also sogar noch FALSCH!

Nimm lieber Format oder /1000 und mit FloatToStr oder so.

Mfg
FAlter

p80286 15. Aug 2008 17:12

Re: Delphi Befehlslaufzeit
 
Hallo zusammen,

wenn ich die Eingangsfrage richtig verstanden habe, dann geht es darum in einer bestimmten Zeitspanne eine Arbeit zu erledigen und dann noch etwas zu warten. Da bietet sich TTimer doch an! warum die alte Doskrücke
repeat until tckcount>x
immer noch verwenden?

hier ein Auszug aus der Delphi Hilfe:
Zitat:

Beschreibung

Mit der Komponente Timer kann nach Ablauf einer bestimmten Zeitspanne ein Ereignis ausgelöst werden. Dies kann einmal oder mehrmals hintereinander geschehen. Der auszuführende Quelltext wird im Ereignis OnTimer der Timer
-Komponente festgelegt.

Aufgaben

In der Eigenschaft Interval kann die Zeitspanne festgelegt werden, nach der das Timer-Ereignis ausgelöst wird.
Um das Auftreten des Timer-Ereignisses zu verhindern, setzen Sie die Eigenschaft Enabled der Timer-Komponente auf false.

Grüße
K-H


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:53 Uhr.
Seite 1 von 2  1 2      

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