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

こちらもご覧ください

KsDiscardEvent