Thema: Delphi Wie schnell ist Now?

Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.142 Beiträge
 
Delphi 12 Athens
 
#9

Re: Wie schnell ist Now?

  Alt 8. Sep 2004, 01:07
Wer wissen möchte, wie schnell nun bei ihm Now reagiert, der kannst ja mal von Windows erfragen (siehe Demo), oder er mist nach (siehe Codeschnipsel)

Das Codeschnipsel
Benötigt wir ein Button (Button1) und ein Editfeld (Edit1).

Ausgegeben wird die durchschnittliche Dauer (in Millisekunden).

Gemessen werden 1000 Zyklen (kann notfalls geändert werden), was bei 10ms Zyklusdauer etwa 10 Sekunden dauern sollte.

Delphi-Quellcode:
Procedure TForm1.Button1Click(Sender: TObject);
  Var T, N: TTime;
    A: Integer;
    S: TTime;

  Begin
    S := Now;
    T := S;
    A := 0;
    While A <> 1000 do Begin
      N := Now;
      If N <> T Then Begin
        T := N;
        Inc(A);
      End;
    End;
    Edit1.Text := FloatToStr((N - S) * MSecsPerDay / A);
    Beep; Sleep(250); Beep; Sleep(250); Beep;
  End;
Die Demo
Auf Seite 2 steht unter SystemTimeAdjustment / TimeAdjustment & TimeIncrement der Wert (Bedeutung siehe MSDN-Library durchsuchenGetSystemTimeAdjustment)
Angehängte Dateien
Dateityp: exe system_datumszeit_speicher_sfx_466.exe (258,2 KB, 20x aufgerufen)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat