![]() |
Re: Wie schnell ist Now?
Wisst ihr, wie Now implementiert ist?
Delphi-Quellcode:
Ich denke, man sieht, wie leicht sich ein paar Ticks sparen lassen. Und GetTickCount ist dann, wenn es nur auf Millisekunden ankommt, vermutlich die bessere Wahl (unbewiesene Behauptung). Bei noch genauerer
Result := Date + Time;
PS: Schade, dass delphi keine Makros kann :( |
Re: Wie schnell ist Now?
Delphi-Quellcode:
also das is mein qt...
writeln('Es wird nun die Geschwindigkeit von "now" 1 Minute lang getestet...');
zeit:=now; while (now<zeit+1/24/60) do inc(i);//1=tag /24=stunde /60=minute writeln('Es wurden '+inttostr(i)+' Versuche geschafft...'); writeln('-> '+floattostr(i / 60)+' pro Sekunde...'); writeln('-> '+floattostr(60000 / i)+' Millisekunden pro Durchlauf...'); bei dem kommt immer in etwa dasselbe raus beispiel: 90162736 Versuche 1502712,26666667 pro Sekunde 0,000665463390551946 Ms pro Durchlauf -> für "ein Now" weniger als 0,001 Ms kann das sein? EDIT: Es kommt noch schlimmer: in einem Dauerlauf sinkt die zeit kontinuierlich... hier meine logfile, in der ich von jeder runde meinen zähler speicher (welcher immer höher steigt): Zitat:
wo ist der fehler in meinem quelltext? |
Re: Wie schnell ist Now?
Zitat:
Diese Funktion steckt in der KERNEL32.DLL Datei. Dieser Wert wird aber nur in einem bestimmten Takt erneuert. Wenn du also in einer Schleife eine Minute lang aufrust, dann ist einmal das System ausgelastet und du verfälscht dadurch die Geschwindikeit von Windows. Hinzu kommt noch, das der interne Wert von GetLocalTime nicht bei jedem Aufruf erneuert wird. Also wirst du so nie eine genaue Zeitmessungen durch führen können. |
Re: Wie schnell ist Now?
ja gut, aber es geht mir ja nicht darum die zeit zu nehmen, sondern darum, wie lange now braucht, und dies verkürzt sich mit zunehmender laufzeit ins unrealistische, hier mein aktueller log:
Zitat:
danach wird windows im aufrufen dieser funktion jedes mal ein klein wenig besser... find ich irgendwo unlogisch... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:45 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-2025 by Thomas Breitkreuz