Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi QuickSort zu schnell für GetTickCount? (https://www.delphipraxis.net/124801-quicksort-zu-schnell-fuer-gettickcount.html)

DeddyH 25. Nov 2008 15:10

Re: QuickSort zu schnell für GetTickCount?
 
Du musst die Frequenz ermitteln und die Ausgabe durch die Frequenz teilen. Was Du jetzt hast, ist die Frequenz.

[edit]Beispiel:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var Start, Stopp, Freq: int64;
begin
  QueryPerformanceCounter(Start);
  sleep(1234);
  QueryPerformanceCounter(Stopp);
  QueryPerformanceFrequency(Freq);
  ShowMessage(Format('Das waren %.2f Sekunden.',[(Stopp - Start) / Freq]));
end;
[/edit]

Fussball-Robby 25. Nov 2008 15:11

Re: QuickSort zu schnell für GetTickCount?
 
Du musst die Differenz durch die Frequenz teilen (irgendwie logisch, denn je höher die Frequenz desto niedriger die Sekundenzahl bei gleicher Differenz :wink: ). Hier mal ein Beispiel für Sekunden, Milli-, Mikro- und Nanosekunden:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  Start, Ende, F, Diff: Int64;
begin
  QueryPerformanceFrequency(F);
  QueryPerformanceCounter(Start);
  Funktion();
  QueryPerformanceCounter(Ende);
  Diff := Ende - Start;

  Label1.Caption := Format('%d Sekunden' + #13#10 +
                           '%d Millisekunden' + #13#10 +
                           '%d Mikrosekunden' + #13#10 +
                           '%d Nanosekunden', [Diff div F, Diff * 1000 div F, Diff * 1000000 div F, Diff * 1000000000 div F]);
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:26 Uhr.
Seite 2 von 2     12   

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