KeReadStateEvent 関数 (wdm.h)

KeReadStateEvent ルーチンは、イベント オブジェクトの現在の状態 (シグナル状態またはシグナルなし) を返します。

構文

LONG KeReadStateEvent(
  [in] PRKEVENT Event
);

パラメーター

[in] Event

呼び出し元がストレージを提供する初期化されたイベント オブジェクトへのポインター。

戻り値

イベント オブジェクトが現在シグナル状態に設定されている場合は、0 以外の値が返されます。 それ以外の場合、0 が返されます。

注釈

このルーチンは、イベントのシグナル状態をポーリングする効率的な方法を提供します。 KeReadStateEvent は、 イベントへのアクセスを同期することなく、イベントの状態を読み取ります。 KeReadStateEvent によるイベント状態のアクセスは、KeSetEventKeWaitForSingleObject などのイベント状態へのアクセスを同期するルーチンによって相互に排他的であると想定しないでください。

また、DIRQL でドライバーの割り込みサービス ルーチンからイベントの状態を読み取ることもできます。次の条件が満たされている場合は、ドライバーのイベント オブジェクトが常駐 (おそらくデバイス拡張機能内) であり、イベントにアクセスするその他の関数は、そのアクセスを ISR と同期します。

イベント オブジェクトの詳細については、「 イベント オブジェクト」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 以降で使用できます。
対象プラットフォーム ユニバーサル
Header wdm.h (Ntddk.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL <= DISPATCH_LEVEL
DDI コンプライアンス規則 HwStorPortProhibitedDDIs(storport), IrqlKeDispatchLte(wdm)

こちらもご覧ください

KeClearEvent

KeInitializeEvent

KeResetEvent

KeSetEvent

KeWaitForSingleObject