Поделиться через


Практическое руководство. Наблюдение за серверными таймерами

Обновлен: Ноябрь 2007

Компонент Timer периодически генерирует событие Elapsed через заданный промежуток времени. Это событие можно использовать для выполнения необходимых действий по обработке. Например, имеется приложение электронной коммерции, непрерывно регистрирующее в базе данных заказы на поставку. Служба, составляющая наряды на доставку, обрабатывает заказы пакетами, а не по отдельности. Для настройки запуска обработки пакетов через каждые 30 минут можно воспользоваться таймером.

Создание обработчика для события Elapsed

  1. Создайте экземпляр компонента Timer и задайте необходимые для его работы свойства. Дополнительные сведения см. в разделе Практическое руководство. Создание экземпляров серверных таймеров.

  2. Привяжите обработчик событий myTimer_Elapsed к событию Elapsed. Дополнительные сведения см. в разделе Прием событий. Код должен выглядеть следующим образом:

    AddHandler myTimer.Elapsed, New _
       System.Timers.ElapsedEventHandler(AddressOf Me.myTimer_Elapsed)
    
         myTimer.Elapsed +=
               new System.Timers.ElapsedEventHandler(myTimer_Elapsed);
    
    c45bs4h5.alert_note(ru-ru,VS.90).gifПримечание.

    Дополнительные сведения о данном синтаксисе см. в разделе Создание обработчиков событий в Windows Forms.

  3. Создайте процедуру 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!");
        }
    

См. также

Задачи

Практическое руководство. Создание экземпляров серверных таймеров

Основные понятия

Знакомство с серверными таймерами

Ссылки

Общие сведения о компоненте Timer (Windows Forms)

Другие ресурсы

Создание обработчиков событий в Windows Forms