1. ホーム
  2. c#

[解決済み] C#のコンソールアプリケーションにタイマーを追加する方法

2022-02-24 23:48:33

質問

C#のコンソールアプリケーションにタイマーを追加するにはどうすればよいのでしょうか?いくつかのサンプルコードを提供していただけると助かります。

どのように解決するのですか?

しかし、時間の経過をシミュレートするためには、時間のかかるコマンドを実行する必要があります。

しかし、forループを使って永遠に何らかの機能を実行するスタイルは、デバイスのリソースを大量に消費してしまうので、代わりにガベージコレクタを使ってそのようなことをすることができます。

この改造は、同じ書籍「CLR Via C# Third Ed.」のコードで見ることができます。

using System;
using System.Threading;

public static class Program 
{
   private Timer _timer = null;
   public static void Main() 
   {
      // Create a Timer object that knows to call our TimerCallback
      // method once every 2000 milliseconds.
      _timer = new Timer(TimerCallback, null, 0, 2000);
      // Wait for the user to hit <Enter>
      Console.ReadLine();
   }

   private static void TimerCallback(Object o) 
   {
      // Display the date/time when this method got called.
      Console.WriteLine("In TimerCallback: " + DateTime.Now);
   }
}