KsFreeEventList 関数 (ks.h)
KsFreeEventList 関数は、指定したリストからすべてのイベントを解放します。これらのイベントは、KSEVENT_ENTRY構造体で構成されていることを前提とします。 この関数は、PASSIVE_LEVELでのみ呼び出すことができます。
構文
KSDDKAPI VOID KsFreeEventList(
[in] PFILE_OBJECT FileObject,
[in, out] PLIST_ENTRY EventsList,
[in] KSEVENTS_LOCKTYPE EventsFlags,
[in] PVOID EventsLock
);
パラメーター
[in] FileObject
コンテキスト情報の削除関数に渡されるファイル オブジェクトを指定します。 関連付けられたファイル オブジェクトは、イベントを有効にするときに最初に指定されたファイル オブジェクトと比較するために使用されます。 これにより、ファイル オブジェクトによって区別される複数のクライアントに対して 1 つのイベント リストを使用できます。
[in, out] EventsList
解放する項目の一覧の先頭KSEVENT_ENTRYポイントします。 リスト上のイベントが現在無効になっている場合は、渡されます。 処理中に新しい要素がリストに追加されると、解放されない可能性があります。
[in] EventsFlags
イベント リストへのアクセスに使用する除外ロックの種類を指定する KSEVENTS_LOCKTYPE フラグを指定します。 フラグが設定されていない場合、ロックは行われません。
[in] EventsLock
リスト上の要素へのアクセスを同期するために使用されます。 要素にアクセスすると、削除済みとしてマークされるため、後続の削除要求は失敗します。 その後、削除関数 (存在する場合) を呼び出した後、ロックが解放されます。 削除関数は、リストから要素を実際に削除する前に、イベント生成と同期する必要があります。
戻り値
なし
解説
KsFreeEventList 関数は remove ハンドラーを呼び出し、イベントごとに KsDiscardEvent を呼び出します。 呼び出し元がイベント所有者であるとは見なされません。
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
Header | ks.h (Ks.h を含む) |
Library | Ks.lib |