![]() |
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:
Kann mir jemand weiterhelfen?
//irgendein Befehl1
//irgendein Befehl2 Sleep(50-Befehl1.Abarbeitungszeit-Befehl2.Abarbeitungszeit) Vielen Dank |
Re: Delphi Befehlslaufzeit
Ich denke dein Ansatz ist bei einem Nicht-Echtzeitbetriebssystem wie Windows Falsch.
Im Notfall könntest du mit GetTickCount arbeiten |
Re: Delphi Befehlslaufzeit
Dann ist sleep() schon mal total falsch. Schau dir mal GetTickCount an
|
Re: Delphi Befehlslaufzeit
Liste der Anhänge anzeigen (Anzahl: 1)
Guckst Du hier:
HURRA ! 300. Beitrag! |
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:
Dann hastes in Sekunden angezeigt ;)
Zeitvor:=gettickcount;
//(deine Procedure) Zeitnach:=gettickcount; zeitgesamt:=zeitnach-zeitvor; LabelAusgabe.caption:=inttostr(zeit div 1000)+','+inttostr(zeit mod 1000)+' s'; |
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!
|
Re: Delphi Befehlslaufzeit
Befehlslaufzeit in Sekunden? Ist natürlich abhängig von der Prozedur, aber eine Anzeige als Millisekunden ist da vielleicht besser.
|
Re: Delphi Befehlslaufzeit
ja, GetTickCount liefert doch ms
Ich habe das nur dann in sekunden umgewandelt... also dann zb. 2,123 Sekunden statt 2123ms |
Re: Delphi Befehlslaufzeit
Hi,
Zitat:
Nimm lieber Format oder /1000 und mit FloatToStr oder so. Mfg FAlter |
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:
K-H |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:47 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz