Clase __IntervalTimerInstruction

La clase del sistema __IntervalTimerInstruction genera eventos a intervalos, de manera similar a un mensaje WM_TIMER en la programación de Windows. Un consumidor de eventos se registra para recibir eventos de temporizador de intervalo mediante la creación de una consulta de eventos que haga referencia a esta clase. Debido al comportamiento del sistema operativo, no hay ninguna garantía de que los eventos se entreguen con precisión en el intervalo solicitado.

La siguiente sintaxis se simplifica desde el código de Managed Object Format (MOF) e incluye todas las propiedades heredadas. Las propiedades se indican en orden alfabético, no en orden de MOF.

Sintaxis

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

Miembros

La clase __IntervalTimerInstruction tiene estos tipos de miembros:

Propiedades

La clase __IntervalTimerInstruction tiene estas propiedades.

IntervalBetweenEvents

Tipo de datos: uint32

Tipo de acceso: solo lectura

Calificadores: Units (milisegundos)

Número de milisegundos entre activaciones de eventos.

SkipIfPassed

Tipo de datos: booleano

Tipo de acceso: solo lectura

Si es TRUE, se omitirá este evento si el intervalo ya pasó. El valor predeterminado es FALSE. Esta propiedad se hereda de __TimerInstruction.

false

Cuando WMI o el consumidor vuelvan a estar disponibles, se generará y recibirá un evento de notificación.

true

El evento de temporizador no se produce si WMI no está disponible para generarlo en el intervalo de tiempo adecuado o el consumidor que solicita recibir el evento no está disponible.

TimerId

Tipo de datos: cadena

Tipo de acceso: solo lectura

Calificadores: Key

Identificador único de este objeto __IntervalTimerInstruction. Esta propiedad se hereda de __TimerInstruction.

Comentarios

La clase __IntervalTimerInstruction se deriva de __TimerInstruction.

La consulta de eventos que se especifica para registrarse para un evento de temporizador de intervalo suele basarse en la propiedad TimerId. Los eventos de notificación generados a partir de un evento de temporizador de intervalo contienen la propiedad NumFirings que contiene datos que reflejan cuántos eventos se activaron durante el tiempo en que no se pudieron recibir los eventos. Si SkipIfPassed se establece en TRUE, esa información se descarta.

El valor de la propiedad IntervalBetweenEvents debe ser razonablemente grande. Si es demasiado pequeño, es posible que WMI lo omita y puede que no genere el evento debido a limitaciones en algunos sistemas operativos.

WMI genera el evento de temporizador de intervalo mediante la creación de una instancia de la clase __TimerEvent.

Para recibir estos eventos de temporizador en un consumidor de evento temporal, ejecute IWbemServices::ExecNotificationQuery con la cadena de consulta de evento siguiente:

SELECT * FROM __TimerEvent WHERE TimerID = "MyEvent"

Para recibir estos eventos de temporizador en un consumidor de evento permanente, debe cargar la consulta anterior en un filtro de eventos, definir un consumidor lógico y crear un enlace de filtro a consumidor para el filtro y el consumidor. Para más información, consulte Recepción de eventos en todo momento.

Ejemplos

La declaración MOF siguiente muestra cómo generar un evento de temporizador de intervalo con la propiedad key establecida en "MyEvent" cada 10 segundos:

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

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Vista
Servidor mínimo compatible
Windows Server 2008
Espacio de nombres
Todos los espacios de nombres WMI

Consulte también

__TimerInstruction

Clases del sistema WMI

Recepción de eventos programados o periódicos