방법: 서버 기반 타이머 모니터링
업데이트: 2007년 11월
Timer 구성 요소는 지정된 간격에 따라 주기적으로 Elapsed라는 이벤트를 발생시킵니다. 이 이벤트를 처리하여 필요한 프로세싱을 수행할 수 있습니다. 예를 들어, 지속적으로 데이터베이스에 판매 주문을 보내는 온라인 판매 응용 프로그램을 가지고 있다고 가정하면 선적 안내를 컴파일하는 서비스는 주문을 개별 처리하지 않고 일괄 처리합니다. 타이머를 사용하면 30분마다 일괄 처리를 시작할 수 있습니다.
Elapsed 이벤트 처리기를 만들려면
Timer 구성 요소의 인스턴스를 만들고 이 인스턴스가 제대로 동작하는 데 필요한 속성을 설정합니다. 자세한 내용은 방법: 서버 기반 타이머의 인스턴스 만들기를 참조하십시오.
이벤트 처리기 myTimer_Elapsed를 Elapsed 이벤트에 연결합니다. 자세한 내용은 이벤트 사용을 참조하십시오. 코드는 다음과 같습니다.
AddHandler myTimer.Elapsed, New _ System.Timers.ElapsedEventHandler(AddressOf Me.myTimer_Elapsed)
myTimer.Elapsed += new System.Timers.ElapsedEventHandler(myTimer_Elapsed);
참고: 이 구문에 대한 자세한 내용은 Windows Forms에서 이벤트 처리기 만들기를 참조하십시오.
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!"); }
다음 코드에서는 5분마다 이벤트를 발생시키고 해당 이벤트를 알려주는 메시지를 표시하는 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!"); }