C# のタイマーは、プログラミングの世界で利用できる最高の機能の 1 つです。タイマーは、サーバー側とクライアント側の両方でソフトウェア プログラムの開発において重要な役割を果たします。これらは主に、他の干渉なしに特定の時間間隔でイベントをトリガーするために使用されます。タイマーは視覚的な表現を持たないため、バックグラウンドで動作します。したがって、C# の時間の助けを借りて時間速度を増減してアニメーション シーケンスをスケジュールできるため、コードをチェックしたり、固定時間にイベントを実行したりするときにタイマー オブジェクトを使用できます。
C# でタイマーを表す構文を見てみましょう:
timer = new System.Timers.Timer(3000) ;
ここでは 3 秒間のタイマー オブジェクトを作成しました。タイマー オブジェクトを作成した後、経過イベントのタイマーを設定できます。その後、以下の構文を使用してタイマーを開始できます。
timer.Elapsed += OnTimedEvent ; timer.Enabled = true ;
C# でのタイマーの動作、実装、機能を正確に理解するために、以下に示すタイマー関数の例を説明します。
以下は、タイマーの動作を示す C# コードの例です。
コード:
using System ; using System.Timers ; class Timer_Example { public static void Main() { Timer newTimer = new Timer() ; newTimer.Elapsed += new ElapsedEventHandler(DisplayTimeEvent ) ; newTimer.Interval = 2000 ; newTimer.Start() ; while ( Console.Read() != 'q' ) { ; // we can write anything here if we want, leaving this part blank won’t bother the code execution. } } public static void DisplayTimeEvent( object source, ElapsedEventArgs e ) { Console.Write( " \r{0} " , DateTime.Now ) ; } }
出力:
上記のコードでは、C# でのタイマーの基本機能と動作を示すために、クラス Timer_Example を宣言しました。その後、newTimer という名前を付けて新しいタイマーを宣言しています。したがって、この newTimer を使用して、タイマー関数の経過機能と間隔機能を呼び出します。すでにタイマー値を 2 秒に設定しているので、while 条件が true になるまでタイマー関数を初期化します。 DateTime.now を呼び出すと、出力画面に日付と時刻が表示されます。
コード:
using System ; using System.Timers ; public class Test_Timers { private static Timer timer ; public static void Main() { timer = new System.Timers.Timer() ; timer.Interval = 6000 ; timer.Elapsed += OnTimedEvent ; timer.AutoReset = true ; timer.Enabled = true ; Console.WriteLine( " Please enter any key to exit from the code anytime... " ) ; Console.ReadLine() ; } private static void OnTimedEvent(Object source, System.Timers.ElapsedEventArgs e) { Console.WriteLine( " Event : {0} " , e.SignalTime ) ; } }
出力:
上記のコードでは、「Test_Timers」という名前のクラスを宣言し、その中で「timer」という名前のプライベート静的タイマーを 1 つ宣言し、パブリック静的メインで timer を時間間隔 6 の新しいタイマーに等しいように設定しました。秒。 onTimedEvent メソッドを使用すると、日付と時刻を出力でき、条件が満たされるまで 6 秒ごとにステータスを出力し続けます。出力でわかるように、2 つのイベント間のギャップは 6 秒であり、条件が true になるまで繰り返し続けます。
コード:
using System ; using System.Collections.Generic ; using System.Timers ; static class DemoTimers { static Timer time ; static List <DateTime> output = new List <DateTime> () ; public static void Start() var timer = new Timer(5000) ; timer.Elapsed += new ElapsedEventHandler(Elapsed_time ) ; timer.Enabled = true ; time = timer ; } static void Elapsed_time( object sender , ElapsedEventArgs e ) { otuput.Add(DateTime.Now) ; } public static void PrintTimes() { if ( otuput.Count> 0 ) { Console.WriteLine( " TIMERS : " ) ; foreach ( var time in otuput ) { Console.Write(time.ToShortTimeString() + " " ) ; } Console.WriteLine() ; } } } class Program { static void Main() { DemoTimers.Start() ; while ( true ) { DemoTimers.PrintTimes() ; Console.WriteLine( " WAITING To Print" ) ; System.Threading.Thread.Sleep( 2000 ) ; } } }
出力:
上記のコードでは、System.Collections.Generic を使用し、System.Timers クラスを使用してその機能を使用していることがわかります。 1 つの静的クラス DemoTimers を宣言し、その中で time という名前の静的タイマーを作成しました。その後、同じく DateTime という名前の 1 つの静的リストを作成し、それが出力に保存されます。コードでタイマーの使用を開始するには、Start () メソッドを 1 つ作成し、タイマーを 5 秒に設定してから経過イベント ハンドラーを追加し、条件を true に設定する必要があります。
Elapsed_time という名前のもう 1 つのメソッドでは、考えられるイベントごとに日付と時刻を追加できます。これは、イベントの現在の時刻と日付を見つけるのに役立ちます。次に、PrintTimes という void 型のメソッドをもう 1 つ宣言しました。このメソッドを使用すると、記録されたすべての時間を印刷できます。条件が追加されると、条件が true になるまで TIMERS を出力し続けます。出力リスト内の各 var time が出力されます。
最後に、Program というクラスを作成し、その中で static void main を宣言し、タイマー クラスを開始します。 3 秒ごとに PrintTimes 関数を呼び出しているため、条件が true の場合、イベントが発生するたびに 3 秒間の休憩を挟んで結果を出力し続けます。
タイマー クラスを利用すると、プログラマは数分または数秒以内にコードを定期的に呼び出すことができます。したがって、プログラムの全体的な品質を監視するには、プログラムを監視するためにタイマーが使用されます。これは静的クラスであるため、インスタンス メンバーを持つことはできません。
以上がC# のタイマーの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。