Procedura: monitorare i timer basati su server

Aggiornamento: novembre 2007

Il componente Timer genera periodicamente un evento Elapsed, in base all'intervallo specificato. È possibile gestire questo evento per eseguire l'elaborazione necessaria. Si supponga ad esempio di disporre di un'applicazione per vendite in linea che inserisce continuamente ordini di vendita in un database. Il servizio che compila le istruzioni per la spedizione opera su un batch di ordini piuttosto che elaborare ciascun ordine individualmente. È possibile utilizzare un timer per avviare l'elaborazione batch ogni 30 minuti.

Per creare un gestore per l'evento Elapsed

  1. Creare un'istanza del componente Timer e impostare le proprietà necessarie per il funzionamento. Per ulteriori informazioni, vedere Procedura: creare istanze di timer basati su server.

  2. Collegare il gestore eventi myTimer_Elapsed all'evento Elapsed. Per ulteriori informazioni, vedere Utilizzo degli eventi. Il codice dovrebbe risultare simile al seguente:

    AddHandler myTimer.Elapsed, New _
       System.Timers.ElapsedEventHandler(AddressOf Me.myTimer_Elapsed)
    
         myTimer.Elapsed +=
               new System.Timers.ElapsedEventHandler(myTimer_Elapsed);
    
    Nota:

    Per ulteriori informazioni sulla sintassi, vedere Creazione di gestori eventi in Windows Form.

  3. Creare la routine myTimer_Elapsed e definire il codice per l'elaborazione dell'evento.

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

    Nel codice riportato di seguito viene illustrato come creare un componente Timer in grado di generare un evento ogni 5 secondi e di visualizzare una finestra di messaggio mediante la quale l'utente viene avvisato dell'evento:

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

Vedere anche

Attività

Procedura: creare istanze di timer basati su server

Concetti

Introduzione ai timer basati su server

Riferimenti

Cenni preliminari sul componente Timer (Windows Form)

Altre risorse

Creazione di gestori eventi in Windows Form