2015-11-28 114 views
0

我正在玩我的應用程序中的線程計時器。我的代碼似乎工作正常,但計時器不會重複。它會運行一次,然後停止/掛起。我使用以下代碼:Theading.Timer每x秒調用一個方法

new System.Threading.Timer(scrape, null, (this.timeout * 1000), System.Threading.Timeout.Infinite); 

this.timeout被設定爲int,例如5(5分鐘)。

我檢查了文檔,並且我看不到任何問題。任何幫助深表感謝。

+4

如果你沒有參考它的計時器可以垃圾收集。 – erem

回答

2

您正在發送參數錯誤。

var timer = new System.Threading.Timer(scrape, null, 0, (this.timeout * 1000)); 

最後一個參數指定間隔。

另外5 * 1000毫秒是5秒而不是5分鐘。如果你想5分鐘,那麼你必須乘以5 60000.

this.timeout * 60000 
+0

對不起,我的意思是把秒,而不是幾分鐘。 Appologies。 – BugHunterUK