zoukankan      html  css  js  c++  java
  • TStopWatch 基本知识

    System.Diagnostics.pas:

    Delphi includes a helpful unit called System.Diagnostics , which implements a

    TStopwatch record. It allows us to measure time events with a better precision than 1
    millisecond and has a pretty exhaustive public interface, as shown in the code fragment
    below:

     TStopwatch = record
      strict private
        class var FFrequency: Int64;
        class var FIsHighResolution: Boolean;
        class var TickFrequency: Double;
      strict private
        FElapsed: Int64;
        FRunning: Boolean;
        FStartTimeStamp: Int64;
        function GetElapsed: TTimeSpan;
        function GetElapsedDateTimeTicks: Int64;
        function GetElapsedMilliseconds: Int64;
        function GetElapsedTicks: Int64;
        class procedure InitStopwatchType; static;
      public
        class function Create: TStopwatch; static;
        class function GetTimeStamp: Int64; static;
        procedure Reset;
        procedure Start;
        class function StartNew: TStopwatch; static;
        procedure Stop;
        property Elapsed: TTimeSpan read GetElapsed;
        property ElapsedMilliseconds: Int64 read GetElapsedMilliseconds;
        property ElapsedTicks: Int64 read GetElapsedTicks;
        class property Frequency: Int64 read FFrequency;
        class property IsHighResolution: Boolean read FIsHighResolution;
        property IsRunning: Boolean read FRunning;
      end;
    

    To use a stopwatch, you first have to create it. You can call TStopwatch.Create to create a

    new stopped stopwatch or TStopwatch.StartNew to create a new started stopwatch. As
    TStopwatch is implemented as a record , there's no need to destroy a stopwatch object.
    When a stopwatch is started, it is measuring time. To start a stopwatch, call the Start
    method and to stop it, call the Stop method. The IsRunning property will tell you if the
    stopwatch is currently started. Call the Reset method to reset the stopwatch to zero.

    The TStopwatch contains a few functions that return the currently measured time. The

    most precise of them is ElapsedTicks , but as there is no built-in (public) function to
    convert this into standard time units, this function is hard to use. My recommendation is to
    just use the ElapsedMilliseconds property which will give you elapsed (measured) time
    in milliseconds.

  • 相关阅读:
    启动ASM 数据库的步骤
    ora15031 DBCA找不到ASM磁盘组
    ORA12514 解决方法
    Rhel Linux 5.1 (32 位)上安装 Oracle ASM数据库 11g 第 1 版
    Oracle ASM for linx as 4 x8664 创建过程
    在安腾AI64 RHEL3 U3服务器上安装ORACLE10G
    ora12528 : message 12528 not found; product=RDBMS ; facility=ora
    linux下启动oracle服务和监听程序
    linux内核升级RPM包安装问题!!!!
    AS4 下安装Oracle 10g(ASM & RAW)
  • 原文地址:https://www.cnblogs.com/BSor/p/9376439.html
Copyright © 2011-2022 走看看