2010-05-07 169 views
4

我在我的代碼中有一個定時器,間隔時間爲10秒。如何在c#中暫停計時器?

當時間過去了,我會做一些檢查。檢查和更新作業可能需要10多秒。

但是,如果我沒有停止計時器,似乎檢查將每隔10秒執行一次。如果我撥打stop(),定時器不能再次啓動。 即是這樣的:

protected void timer_elapsed(object sender, EventArgs args) 
    { 
     __timer.Stop(); 
     //Some checking here more than 10s 
     __timer.Start(); 
    } 

我只是想檢查完成之前另一個10秒,再次檢查。

任何人都可以幫忙嗎?

+0

也許嘗試設置計時器啓用屬性爲false,當你不想讓它運行,設置它回到啓用當你準備好再次去。 – Robb 2010-05-07 04:12:33

回答

5

假設是Winforms或WPF的東西,那應該工作。你確定你沒有得到一個例外或什麼?

如果是網絡版,所有投注都關閉; -p您應該澄清一下,如果這是System.Threading.Timer,System.Timers.TimerSystem.Windows.Forms.Timer或其他。