KeInitializeTimerEx 関数 (wdm.h)
KeInitializeTimerEx ルーチンは、拡張カーネル タイマー オブジェクトを初期化します。
構文
void KeInitializeTimerEx(
[out] PKTIMER Timer,
[in] TIMER_TYPE Type
);
パラメーター
[out] Timer
呼び出し元がストレージを提供するタイマー オブジェクトへのポインター。
[in] Type
タイマー オブジェクトの種類 ( NotificationTimer または SynchronizationTimer ) を指定します。
戻り値
なし
解説
タイマー オブジェクトは、シグナル化されていない状態に初期化されます。
タイマー オブジェクトの記憶域は、ドライバーによって作成されたデバイス オブジェクトのデバイス拡張機能、ドライバーによって作成されたコントローラー オブジェクトのコントローラー拡張機能、または呼び出し元によって割り当てられた非ページ プール内に存在する必要があります。
通知タイマーの有効期限が切れると、待機しているすべてのスレッドが解放され、タイマーは明示的にリセットされるまでシグナル状態のままになります。 同期タイマーの有効期限が切れると、1 つの待機スレッドが解放され、タイマーが通知されていない状態にリセットされるまで、通知された状態に設定されます。
KeInitializeTimerEx の呼び出し元は、IRQL = DISPATCH_LEVEL 以下で実行する必要があります。 IRQL = PASSIVE_LEVEL でタイマーを初期化することをお勧めします。
タイマー オブジェクトの詳細については、「 タイマー オブジェクトと DPC」を参照してください。
タイマーの有効期限を定義するには、 KeSetTimer または KeSetTimerEx を使用します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 以降で使用できます。 |
対象プラットフォーム | ユニバーサル |
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL (「解説」セクションを参照) |
DDI コンプライアンス規則 | HwStorPortProhibitedDDIs(storport), IrqlKeDispatchLte(wdm) |