Einzelnen Beitrag anzeigen

alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#7

Re: Abarbeitungszeit einer Prozedure messen???

  Alt 12. Mai 2005, 20:01
Oder du nimmst den hochauflösenden Timer, der in jedem Windows eingebaut ist:
Delphi-Quellcode:
unit csPerformance;

interface
Type
  TTimerID = 0..10;

Var
  CounterFrequency : Int64;

Procedure StartTimer (aTimer : TTimerID);
Function StopTimer (aTimer : TTimerID) : Real;
implementation
uses Windows;
Var
  Tmr : Array [TTimerID] Of Int64;

Procedure StartTimer (aTimer : TTimerID);
Begin
  QueryPerformanceCounter(Tmr[aTimer]);
End;

Function StopTimer (aTimer : TTimerID) : Real;
Var
  t : Int64;

Begin
  QueryPerformanceCounter (t);
  Result := (t - Tmr [aTimer])/CounterFrequency
End;

initialization
  QueryPerformanceFrequency(CounterFrequency);
  if CounterFrequency = 0 then CounterFrequency := 1;
end.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat