2016-08-17 9 views
0

このコードをC#サービスに使用していますが、「SomeFuction」は6分後に実行する必要がありますが、30分後には停止します。C#一部の時間の後にタイマーが停止する

ここに何がありますか?私のような?スコープの外に行くTimerオブジェクトですコードの外観の残りの部分は何それは私のサービスが実行されるまで実行したい、:(

var timer = new System.Threading.Timer((e) => 
     { 
      try 
      { SomeFunction(arg1, arg2, arg3); } 
      catch 
      { return;} 

     }, null, 0, 360000); 
+0

あなたはSystem.Threading.Timerの代わりでSystem.Timers.Timerを使用している理由はありますか? – saarrrr

答えて

1

TimerことそれができますGarbageCollectorで配置されます?あなただけ。GarbageCollectionを防止するために

、タイマー参照がオブジェクトその電子に格納されることを確認してくださいローカルスコープでタイマーリファレンスを保持変数を宣言するように思えます本サービスの全期間にわたる誇張です。

は、同様の問題については、この記事を参照してください:Why does System.Threading.Timer stop on its own?

+0

速い応答のためのマヌエルありがとう、私はその変数をプライベートに変更しました。今私はそれが動作するかどうかを確認するために数時間待つ必要があります。 : あなたの助けをお寄せいただきありがとうございます!乾杯! – mike

+0

あなたは大歓迎です:) –

関連する問題