2014-02-19 76 views
1

我試圖每X秒獲得一個函數,並且使用System.Timers來執行該任務。定時器在第一個時間間隔後不重新啓動

在函數第一次調用它自己之後,程序結束而不是繼續到下一個時間間隔..任何方法都是這樣做的,而不是僅僅使用循環?它看起來將會是定時器的錯誤使用。

我的代碼是像這樣:

 Timer timer1 = new Timer(); 
     timer1.Elapsed += new ElapsedEventHandler(someFunction); 
     timer1.Interval = 1000; // in miliseconds 
     timer1.Start(); 
+3

該代碼是否在控制檯應用程序的main()方法上調用? – ken2k

回答

2

請注意,Timer對象實例可能被垃圾收集。因此,只要您需要,您需要保持對定時器的引用。否則,垃圾收集器將收集您的Timer並釋放附加到它的非託管資源,從而取消激活計時器。

+0

謝謝!那真的是這樣:) –

0

也許嘗試

timer.AutoReset = true; 

的System.Timers.Timer類

相關問題