プログラムが開いた瞬間から閉じるまで、数秒ごとに機能を繰り返したい。C# でこれを行う最善の方法は何でしょうか?
user1071461
質問する
110722 次
4 に答える
82
タイマーを使用します。基本的に3種類あり、それぞれ目的に合わせて使い分けています。
Windows フォーム アプリケーションでのみ使用します。このタイマーはメッセージ ループの一部として処理されるため、タイマーは高負荷時にフリーズする可能性があります。
同期が必要な場合は、これを使用してください。これは、タイマーを開始したスレッドで tick イベントが実行されることを意味し、あまり手間をかけずに GUI 操作を実行できます。
これは最も強力なタイマーで、バックグラウンド スレッドでティックを発生させます。これにより、GUI やメイン スレッドをフリーズすることなく、バックグラウンドで操作を実行できます。
ほとんどの場合、System.Timers.Timer をお勧めします。
于 2012-07-02T15:43:35.510 に答える
46
このためにSystem.Timers.Timer
は最高の作品
// Create a timer
myTimer = new System.Timers.Timer();
// Tell the timer what to do when it elapses
myTimer.Elapsed += new ElapsedEventHandler(myEvent);
// Set it to go off every five seconds
myTimer.Interval = 5000;
// And start it
myTimer.Enabled = true;
// Implement a call with the right signature for events going off
private void myEvent(object source, ElapsedEventArgs e) { }
詳細については、Timer クラス (.NET 4.6 および 4.5)を参照してください。
于 2012-07-02T16:15:40.313 に答える