2010-03-30 206 views
1

我想實現一個Windows服務計劃任務。 我已經創建了windows服務。在一個服務中,我實現了一個計時器。計時器在課間時間初始化。定時器間隔在服務的啓動方法中設置,並且在服務的啓動方法中啓用。定時器過後,事件發生了,我做了一些操作。計劃任務與Windows服務和system.timer.timer

我的問題是,我處於兩難境地。可以說我在Elapsed事件中所做的動作,可以說需要一個小時,定時器間隔設置爲半小時。所以即使先前調用逝去的事件還沒有結束,也有機會發生新的調用逝去的事件。

我的問題是否會有任何衝突或者是否正常或者我是否會使用線程。 請給些建議

回答

0

您可以在長時間運行的方法,開始時停止計時,然後在年底再次啓動:

Timer.Change(Timeout.Infinite, Timeout.Infinite) 
// do long task ... 
Timer.Change(dueTime,period)