다음을 통해 공유


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

컨텍스트 정보를 위해 제거 함수에 전달된 파일 개체를 지정합니다. 연결된 파일 개체는 이벤트를 사용하도록 설정할 때 원래 지정된 파일 개체와 비교하는 데 사용됩니다. 이렇게 하면 파일 개체로 구분된 여러 클라이언트에 단일 이벤트 목록을 사용할 수 있습니다.

[in, out] EventsList

해제할 KSEVENT_ENTRY 항목 목록의 헤드를 가리킵니다. 목록의 모든 이벤트가 현재 비활성화되어 있으면 전달됩니다. 새 요소가 처리되는 동안 목록에 추가되는 경우 해제되지 않을 수 있습니다.

[in] EventsFlags

이벤트 목록에 액세스하는 데 사용할 제외 잠금 유형을 지정하는 KSEVENTS_LOCKTYPE 플래그를 지정합니다. 플래그가 설정되지 않으면 잠금이 수행되지 않습니다.

[in] EventsLock

목록의 요소에 대한 액세스를 동기화하는 데 사용됩니다. 요소에 액세스한 후에는 삭제된 것으로 표시되므로 후속 제거 요청이 실패합니다. 그런 다음 제거 함수(있는 경우)를 호출한 후 잠금이 해제됩니다. 제거 함수는 실제로 목록에서 요소를 제거하기 전에 이벤트 생성과 동기화해야 합니다.

반환 값

없음

설명

KsFreeEventList 함수는 제거 처리기를 호출한 다음 각 이벤트에 대해 KsDiscardEvent를 호출합니다. 호출자가 이벤트 소유자라고 가정하지 않습니다.

요구 사항

요구 사항
대상 플랫폼 유니버설
헤더 ks.h(Ks.h 포함)
라이브러리 Ks.lib

추가 정보

KsDiscardEvent