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


Класс __IntervalTimerInstruction

Системный класс __IntervalTimerInstruction создает события через интервалы времени, аналогичные сообщению WM_TIMER в программировании windows. Потребитель события регистрируется для получения событий таймера интервала путем создания запроса события, который ссылается на этот класс. Из-за поведения операционной системы нет никаких гарантий того, что события будут доставляться точно с требуемым интервалом.

Приведенный ниже синтаксис является упрощенной версией кода MOF и включает все унаследованные свойства. Свойства перечислены в алфавитном порядке, а не в порядке MOF.

Синтаксис

class __IntervalTimerInstruction : __TimerInstruction
{
  uint32  IntervalBetweenEvents;
  boolean SkipIfPassed = FALSE;
  string  TimerId;
};

Члены

Класс __IntervalTimerInstruction имеет следующие типы членов:

Элемент Property

Класс __IntervalTimerInstruction имеет следующие свойства.

IntervalBetweenEvents

Тип данных: uint32

Тип доступа: только для чтения

Квалификаторы: единицы (миллисекунда)

Количество миллисекундах между срабатываниями события.

SkipIfPassed

Тип данных: boolean

Тип доступа: только для чтения

Если задано значение TRUE, это событие следует пропустить, если интервал уже пройден. Значение по умолчанию — FALSE. Это свойство наследуется от __TimerInstruction.

Ложь.

Когда WMI или потребитель снова станет доступным, будет создано и получено событие уведомления.

TRUE

Событие таймера не возникает, если WMI недоступен для его создания в соответствующий интервал времени или потребитель, запрашивающий получение события, недоступен.

TimerId

Тип данных: string

Тип доступа: только для чтения

Квалификаторы: Ключ

Уникальный идентификатор объекта __IntervalTimerInstruction . Это свойство наследуется от __TimerInstruction.

Комментарии

Класс __IntervalTimerInstruction является производным от __TimerInstruction.

Запрос события, введенный для регистрации события таймера интервала, обычно основан на свойстве TimerId . События уведомлений, созданные из события таймера интервала, содержат свойство NumFirings, которое содержит данные, отражающие количество событий, созданных за время, когда события не были получены. Если параметр SkipIfPassed имеет значение TRUE, эти сведения удаляются.

Значение свойства IntervalBetweenEvents должно быть достаточно большим. Если он слишком мал, инструментарий WMI может игнорировать его и не создавать событие из-за ограничений в некоторых операционных системах.

WMI создает событие таймера интервала путем создания экземпляра класса __TimerEvent .

Чтобы получить эти события таймера во временном потребителе событий, выполните IWbemServices::ExecNotificationQuery со следующей строкой запроса события:

SELECT * FROM __TimerEvent WHERE TimerID = "MyEvent"

Чтобы получить эти события таймера в постоянном получателе событий, необходимо загрузить предыдущий запрос в фильтр событий, определить логического потребителя и создать привязку фильтра к потребителю для фильтра и потребителя. Дополнительные сведения см. в разделе Получение событий в любое время.

Примеры

В следующем объявлении MOF показано, как каждые 10 секунд создавать событие таймера интервала со свойством ключа MyEvent:

instance of __IntervalTimerInstruction
{
  TimerId = "MyEvent";     // inherited from __TimerInstruction
  SkipIfPassed = FALSE;    // also inherited
  IntervalBetweenEvents = 10000;
};

Требования

Требование Значение
Минимальная версия клиента
Windows Vista
Минимальная версия сервера
Windows Server 2008
Пространство имен
Все пространства имен WMI

См. также раздел

__TimerInstruction

Системные классы WMI

Получение событий времени или повторяющихся событий