次の方法で共有


__IntervalTimerInstruction クラス

__IntervalTimerInstruction システム クラスでは、Windows プログラミングの WM_TIMER メッセージと同様に、間隔を指定してイベントを生成します。 イベント コンシューマーでは、このクラスを参照するイベント クエリを作成することで、間隔タイマー イベントを受信するように登録します。 オペレーティング システムの動作により、要求された間隔でイベントが正確に配信される保証はありません。

次の構文は、マネージド オブジェクト フォーマット (MOF) コードを簡素化しており、継承されたすべてのプロパティを含んでいます。 プロパティは、MOF 順ではなくアルファベット順で一覧表示されています。

構文

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

メンバー

__IntervalTimerInstruction クラスには、次の種類のメンバーがあります。

プロパティ

__IntervalTimerInstruction クラスには、次のプロパティがあります。

IntervalBetweenEvents

データ型: uint32

アクセスの種類: 読み取り専用

修飾子: Units (ミリ秒)

イベントが発生するまでのミリ秒数。

SkipIfPassed

データ型: boolean

アクセスの種類: 読み取り専用

TRUE の場合、間隔が既に渡されていると、このイベントはスキップされます。 既定値は FALSE です。 このプロパティは、__TimerInstruction から継承されます。

false

WMI またはコンシューマーが再び使用可能になると、通知イベントが生成されて受信されます。

true

WMI が適切な時間間隔で生成できない場合、またはイベントの受信を要求しているコンシューマーが使用できない場合、タイマー イベントは発生しません。

TimerId

データ型: string

アクセスの種類: 読み取り専用

修飾子: Key

この __IntervalTimerInstruction オブジェクトの一意の識別子。 このプロパティは、__TimerInstruction から継承されます。

解説

__IntervalTimerInstruction クラスは、__TimerInstruction から派生します。

間隔タイマー イベントに登録するために入力されたイベント クエリは、通常、TimerId プロパティに基づいています。 間隔タイマー イベントから生成された通知イベントには、イベントを受信できなかった期間中に発生したイベントの数を反映するデータを含む NumFirings プロパティが含まれています。 SkipIfPassedTRUE に設定されている場合、その情報は破棄されます。

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 システム クラス

時間指定イベントまたは繰り返しイベントの受信