classe __IntervalTimerInstruction

La classe di sistema __IntervalTimerInstruction genera eventi a intervalli simili a un messaggio di WM_TIMER nella programmazione di Windows. Un consumer di eventi registra per ricevere eventi timer intervallo creando una query di evento che fa riferimento a questa classe. A causa del comportamento del sistema operativo, non vi sono garanzie che gli eventi vengano recapitati esattamente all'intervallo richiesto.

La sintassi seguente è semplificata dal codice MOF (Managed Object Format) e include tutte le proprietà ereditate. Le proprietà sono elencate in ordine alfabetico, non nell'ordine MOF.

Sintassi

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

Members

La classe __IntervalTimerInstruction ha questi tipi di membri:

Proprietà

La classe __IntervalTimerInstruction ha queste proprietà.

IntervalBetweenEvents

Tipo di dati: uint32

Tipo di accesso: sola lettura

Qualificatori: unità (millisecondi)

Numero di millisecondi tra le attivazioni degli eventi.

SkipIfPassed

Tipo di dati: booleano

Tipo di accesso: sola lettura

Se TRUE, questo evento deve essere ignorato se l'intervallo è già passato. Il valore predefinito è FALSE. Questa proprietà viene ereditata da __TimerInstruction.

FALSE

Quando WMI o il consumer diventa nuovamente disponibile, verrà generato e ricevuto un evento di notifica.

TRUE

L'evento timer non si verifica se WMI non è disponibile per generarlo all'intervallo di tempo appropriato o se il consumer che richiede di ricevere l'evento non è disponibile.

TimerId

Tipo di dati: string

Tipo di accesso: sola lettura

Qualificatori: Chiave

Identificatore univoco per questo oggetto __IntervalTimerInstruction . Questa proprietà viene ereditata da __TimerInstruction.

Commenti

La classe __IntervalTimerInstruction deriva da __TimerInstruction.

La query di evento immessa per la registrazione per un evento timer di intervallo è in genere basata sulla proprietà TimerId . Gli eventi di notifica generati da un evento timer di intervallo contengono la proprietà NumFirings che contiene dati che riflettono il numero di eventi generati durante il momento in cui gli eventi non sono stati ricevuti. Se SkipIfPassed è impostato su TRUE, tali informazioni vengono eliminate.

Il valore per la proprietà IntervalBetweenEvents deve essere ragionevolmente grande. Se è troppo piccolo, WMI può ignorarlo e non generare l'evento a causa di limitazioni in alcuni sistemi operativi.

WMI genera l'evento timer interval creando un'istanza della classe __TimerEvent .

Per ricevere questi eventi timer in un consumer di eventi temporanei, eseguire IWbemServices::ExecNotificationQuery con la stringa di query evento seguente:

SELECT * FROM __TimerEvent WHERE TimerID = "MyEvent"

Per ricevere questi eventi timer in un consumer eventi permanente, è necessario caricare la query precedente in un filtro eventi, definire un consumer logico e creare un'associazione filtro-consumer per il filtro e il consumer. Per altre informazioni, vedere Ricezione di eventi in qualsiasi momento.

Esempio

La dichiarazione MOF seguente illustra come generare un evento timer intervallo con la proprietà key impostata su "MyEvent" ogni 10 secondi:

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

Requisiti

Requisito Valore
Client minimo supportato
Windows Vista
Server minimo supportato
Windows Server 2008
Spazio dei nomi
Tutti gli spazi dei nomi WMI

Vedi anche

__TimerInstruction

Classi di sistema WMI

Ricezione di eventi timed o ripetuti