System.Diagnostics.TStopwatch

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

  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;

C++

struct DECLSPEC_DRECORD TStopwatch
{
private:
    static __int64 FFrequency;
    static bool FIsHighResolution;
    static double TickFrequency;
    __int64 FElapsed;
    bool FRunning;
    __int64 FStartTimeStamp;
    System::Timespan::TTimeSpan __fastcall GetElapsed();
    __int64 __fastcall GetElapsedDateTimeTicks();
    __int64 __fastcall GetElapsedMilliseconds();
    __int64 __fastcall GetElapsedTicks();
    static void __fastcall InitStopwatchType();
public:
    static TStopwatch __fastcall Create();
    static __int64 __fastcall GetTimeStamp();
    void __fastcall Reset();
    void __fastcall Start();
    static TStopwatch __fastcall StartNew();
    void __fastcall Stop();
    __property System::Timespan::TTimeSpan Elapsed = {read=GetElapsed};
    __property __int64 ElapsedMilliseconds = {read=GetElapsedMilliseconds};
    __property __int64 ElapsedTicks = {read=GetElapsedTicks};
    /* static */ __property __int64 Frequency = {read=FFrequency};
    /* static */ __property bool IsHighResolution = {read=FIsHighResolution};
    __property bool IsRunning = {read=FRunning};
};

プロパティ

種類 可視性 ソース ユニット
record
struct
public
System.Diagnostics.pas
System.Diagnostics.hpp
System.Diagnostics System.Diagnostics

説明

高解像度ストップウォッチの実装を提供します。

TStopwatch を使用すると、一部の操作の実行にかかった時間を監視するのに使用できる高解像度タイマにアクセスできるようになります。TStopwatch では、オペレーティング システム依存の機能を利用して、高解像度タイマにアクセスします(高解像度タイマを使用できない場合は、通常のタイマが使用されます)。

TStopwatch はクラスではありませんが、それでも明示的な初期化が必要です。StartNew メソッドまたは Create メソッドを呼び出すと、TStopwatch 値を初期化できます。

関連項目