1

Windowsサービスを作成しました.1分ごとにタイマー間隔を設定したので、1分ごとにトリガーされました. しかし、私は毎日同じことを引き起こす必要があります..

OnStart()メソッドでタイマー間隔を設定した以下のコードを見つけることができます。

コード:

    protected override void OnStart(string[] args)
    {
        TraceService("start service");

        //handle Elapsed event
        timer.Elapsed += new ElapsedEventHandler(OnElapsedTime);

        //This statement is used to set interval to 1 minute (= 60,000 milliseconds)

        timer.Interval = 86400000;

        //enabling the timer
        timer.Enabled = true;
    }
4

3 に答える 3

5

この投稿はかなり古いですが、86400000 のようなマジック ナンバーを使用する代わりに、 new TimeSpan(1, 0, 0, 0).TotalMilliseconds のようなものを使用することをお勧めします。何を変えるべきかを知る。

于 2014-07-02T23:57:11.600 に答える
0

だから、あなたの投稿に関するいくつかのこと:

まず、何が問題なのかが明記されていません!

技術的には、Timer は約 25 日のタイマー間隔をサポートしています。したがって、コードは機能するはずです。

25 日を超えてスレッドの安全性を気にしない場合は、System.Threading.Timer にアクセスすることをお勧めします。

詳細はこちら

サービスは Windows ベースのサービスとして実行されるため、System.Threading.Timer にアクセスすることをお勧めします。

于 2013-08-29T06:48:07.487 に答える