Results 1 to 4 of 4

Thread: NLDRcsTiming

  1. #1

    NLDRcsTiming

    ------------
    De sources van NLDDanyUtils zijn te vinden in:
    ftp://ftp.nldelphi.com/public/OpenSo.../NLDDanyUtils/
    ------------

    Dit is een nieuwe unit, die voorlopig 1 Class levert: TPerformanceTimer.
    Deze "timer" is uitgevoerd als een stopwatch. Die kan gebruikt worden om de uitvoeringstijd van bepaalde stukken code te meten, waarbij die stukken code 1 of meedere keren kunnen doorlopen worden.
    De timer kan gestart en gestopt worden (de totale gemeten tijd is de som van de tijden tussen iedere start en stop), alsook ge-reset (de gemeten tijd op nul gezet).
    Bovendien telt de timer ook hoeveel keer er gestart (en gestopt) is, en levert daaruit ook de gemiddelde, maximum en minimum tijd tussen de starts en stops.

    De interface ziet er zo uit:
    Code:
    interface
    
    type
    TPerformanceTimer = Class
      private
        FName  : string; // Timer Name
        FTimer : Int64;  // total timer value
        FStart : Int64;  // interval start moment
        FCount : Int64;  // # of start/stop intervals
        FMin   : Int64;  // minimum interval time
        FMax   : Int64;  // maximum interval time
        FFreq  : Int64;  // # of counts per second
      public
        constructor Create(Name: string = '');
        procedure Reset;
        procedure Start;
        procedure Stop;
        function Value: Extended;
        function Count: Int64;
        function Average: Extended;
        function Maximum: Extended;
        function Minimum: Extended;
        property Name: string read FName write FName;
    end;
    Het gebruik is als volgt:
    Code:
    var T : TPerformanceTimer
    ....
    T := TPerformanceTimer.Create('Naam van de timer');
    ....
    T.Start;
    .. de uitvoeringstijd van deze code wordt gemeten
    T.Stop;
    ....
    T.Start;
    .. de uitvoeringstijd van deze code wordt gemeten
    T.Stop;
    ....
    Memo1.Lines.Add('Timer Name : '  + T.Name);
    Memo1.Lines.Add('Timer Value : ' + FloatToStrF(T.Value, ffFixed, 7, 7));
    Memo1.Lines.Add('Timer Count : ' + IntToStr(T.Count));
    Memo1.Lines.Add('Timer Average: ' + FloatToStrF(T.Average, ffFixed, 7, 7));
    ..
    T.Free;
    Last edited by Dany; 30-Jun-07 at 17:27.

  2. #2
    Hoi, er is nu ook een 'Name' property toegevoegd aan de "TPerformanceTimer" class.

  3. #3
    Hi!

    I'd like to ask how can I download the NLDRcsTiming unit? The FTP link doesn't work for me

    Thank You!

  4. #4
    Vriendelijke groeten,
    Dany

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •