Sdílet prostřednictvím


Gewusst wie: Überwachen serverbasierter Zeitgeber

Aktualisiert: November 2007

Die Timer-Komponente löst auf der Grundlage des von Ihnen angegebenen Intervalls regelmäßig ein Elapsed-Ereignis aus. Durch dieses Ereignis können erforderliche Verarbeitungsschritte ausgeführt werden. Angenommen, eine Anwendung für Onlinebestellungen übermittelt kontinuierlich Bestellungen an eine Datenbank. Der Dienst zur Kompilierung der Lieferanweisungen verarbeitet die Bestellungen im Batchmodus und nicht einzeln. In diesem Fall könnten Sie einen Zeitgeber verwenden, der alle 30 Minuten eine Batchverarbeitung startet.

So erstellen Sie einen Handler für das Elapsed-Ereignis

  1. Erstellen Sie eine Instanz der Timer-Komponente, und legen Sie die erforderlichen Eigenschaften fest. Weitere Informationen hierzu finden Sie unter Gewusst wie: Erstellen von Instanzen für serverbasierte Zeitgeber.

  2. Verknüpfen Sie den Ereignishandler, myTimer_Elapsed, mit dem Elapsed-Ereignis. Weitere Informationen hierzu finden Sie unter Behandeln von Ereignissen. Der Code muss wie folgt aussehen:

    AddHandler myTimer.Elapsed, New _
       System.Timers.ElapsedEventHandler(AddressOf Me.myTimer_Elapsed)
    
         myTimer.Elapsed +=
               new System.Timers.ElapsedEventHandler(myTimer_Elapsed);
    
    c45bs4h5.alert_note(de-de,VS.90).gifHinweis:

    Weitere Informationen über diese Syntax finden Sie unter Erstellen von Ereignishandlern in Windows Forms.

  3. Erstellen Sie die myTimer_Elapsed-Prozedur, und definieren Sie den Code für die Verarbeitung des Ereignisses.

    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!");
        }
    

    Der folgende Code veranschaulicht, wie Sie eine Timer-Komponente erstellen, durch die alle fünf Sekunden ein Ereignis ausgelöst und ein Meldungsfeld angezeigt wird, das Sie auf das Ereignis aufmerksam macht:

    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!");
        }
    

Siehe auch

Aufgaben

Gewusst wie: Erstellen von Instanzen für serverbasierte Zeitgeber

Konzepte

Einführung in serverbasierte Zeitgeber

Referenz

Übersicht über die Timer-Komponente (Windows Forms)

Weitere Ressourcen

Erstellen von Ereignishandlern in Windows Forms