シーン
C# でのタイマー関数の実装 (スケジュールされたタスクとメソッドを実行するまでの待機時間):
C# でタイマー関数を実装する (スケジュールされたタスクと特定のメソッドを実行するまでの待機時間)_C# タイマー 5 分_横暴な Rogue Temperament ブログ - CSDN ブログ
以上がタイマーの使い方についてです。
ボタンをクリックしてタイマーを開始し、停止ボタンをクリックしてタイマーを停止すると、複数回繰り返すとタイマーメソッドが繰り返し実行されることがわかりました。
次の状況を考えてください
C# でウィンドウを閉じてもイベントのサブスクリプションがキャンセルされず、イベントが繰り返し実行される問題の解決策:
そのため、タイマーを停止するときは単に実行を停止するだけであり、タイマー実行のバインドを解除する具体的な方法はないと考えていました。
タイマーは一度初期化され、毎回新しいものではないため、タイマーを停止する場合は実行メソッドのバインドを解除する必要があります。
注記:
ブログ:
Domineering Rogue Temperament_C#、アーキテクチャ ロード、SpringBoot-CSDN ブログ
成し遂げる
1.タイマーを初期化する
Timer _timer = new Timer();
クラス変数として使用する
2.タイマーをスタートする
_timer.Interval = scheduleInterval;
_timer.Tick += _timer_Tick;
_timer.Start();
3. タイマーを停止する
_timer.Tick -= _timer_Tick;
_timer.Stop();
4. 具体的なビジネスシナリオの参照
C# でタイマーを実装して、IP が ping されているか (接続されているか) どうか、および Telnet 経由でポート番号が到達可能かどうか (使用可能かどうか) を定期的に判断します。