HOW TO:監視伺服器端計時器
更新:2007 年 11 月
Timer 元件會根據所指定的時間間隔,週期地引發名為 Elapsed 的事件。您可以藉由控制這個事件來執行您所需要的處理。例如,假設您有一個線上銷售應用程式,可將訂單持續傳送到資料庫中。這個服務會將訂單以批次的方式而非以個別的方式來編譯運送的指令。您可以利用一個計時器來每隔 30 分鐘啟動批次處理。
若要建立 Elapsed 事件的處理常式
建立 Timer 元件的執行個體,然後設定使其能運作的必要屬性。如需詳細資訊,請參閱 HOW TO:建立伺服器端計時器的執行個體。
將事件處理常式 myTimer_Elapsed 連至 Elapsed 事件。如需詳細資訊,請參閱使用事件。您的程式碼應該像這樣:
AddHandler myTimer.Elapsed, New _ System.Timers.ElapsedEventHandler(AddressOf Me.myTimer_Elapsed)
myTimer.Elapsed += new System.Timers.ElapsedEventHandler(myTimer_Elapsed);
注意事項: 如需這個語法的詳細資訊,請參閱在 Windows Form 中建立事件處理常式。
建立 myTimer_Elapsed 程序,並定義您要處理事件的程式碼。
Private Sub myTimer_Elapsed(ByVal sender As System.Object, ByVal e As System.Timers.ElapsedEventArgs) System.Windows.Forms.MessageBox.Show("Elapsed!", _ "Timer Event Raised!") End Sub
private void myTimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e) { System.Windows.Forms.MessageBox.Show("Elapsed!", "Timer Event Raised!"); }
下列程式碼會顯示如何建立 Timer 元件,使得在每隔五秒的時間便會引發一個事件,同時顯示訊息方塊來警示您這個事件的發生:
Private Sub CreateTimer() Dim Timer1 As New System.Timers.Timer() Timer1.Interval = 5000 Timer1.Enabled = True AddHandler Timer1.Elapsed, _ New System.Timers.ElapsedEventHandler(AddressOf Me.Timer1_Elapsed) End Sub Private Sub Timer1_Elapsed(ByVal sender As System.Object, _ ByVal e As System.Timers.ElapsedEventArgs) System.Windows.Forms.MessageBox.Show("Elapsed!", "Timer Event Raised!") End Sub
private void CreateTimer() { System.Timers.Timer Timer1 = new System.Timers.Timer(); Timer1.Enabled = true; Timer1.Interval = 5000; Timer1.Elapsed += new System.Timers.ElapsedEventHandler(Timer1_Elapsed); } private void Timer1_Elapsed(object sender, System.Timers.ElapsedEventArgs e) { System.Windows.Forms.MessageBox.Show("Elapsed!", "Timer Event Raised!"); }