.NETには、3種類のタイマータイプがあります(Comparing the Timer Classes in the .NET Framework Class Libraryを参照)。メインスレッドがビジーであれば、他のタイプのドリフトが発生する可能性があるため、スレッドタイマーを選択しました。これを信頼できるものにする必要があります。コンソールアプリケーションの信頼できるタイマー
タイマーの制御でこのタイマーが動作する方法は、別のスレッドに置かれるため、ビジーでないときに親スレッドで完了した作業開始とともに常にチェックすることができます。
コンソールアプリケーションでのこのタイマーの問題は、タイマーが別のスレッドで進んでいる間、メインスレッドがアプリケーションを終了させるために何もしないことです。
ループにwhile true
ループを追加しようとしましたが、タイマーがオフになったときにメインスレッドがビジー状態です。