다음을 통해 공유


SerCxCompleteWait 함수(sercx.h)

SerCxCompleteWait 메서드는 현재 대기 마스크의 이벤트가 발생했음을 SerCx(직렬 프레임워크 확장)에 알릴 수 있습니다.

구문

NTSTATUS SerCxCompleteWait(
  [in] WDFDEVICE Device,
  [in] ULONG     Event
);

매개 변수

[in] Device

직렬 컨트롤러를 나타내는 프레임워크 디바이스 개체에 대한 WDFDEVICE 핸들입니다.

[in] Event

현재 대기 작업을 종료하는 이벤트의 유형입니다. 이 매개 변수는 대기 마스크 값입니다. 각 이벤트 유형은 대기 마스크의 특정 비트에 해당합니다. 이 비트는 해당 이벤트가 발생했음을 나타내도록 설정됩니다. 대기 마스크로 지정할 수 있는 이벤트 유형에 대한 자세한 내용은 SERIAL_EV_XXX.

반환 값

SerCxCompleteWait 은 호출이 성공하면 STATUS_SUCCESS 반환합니다. 가능한 오류 반환 값에는 다음 상태 코드가 포함됩니다.

반환 코드 설명
STATUS_INVALID_PARAMETER
지정된 이벤트가 현재 대기 마스크에 포함되지 않습니다.

설명

SerCx가 클라이언트로부터 IOCTL_SERIAL_SET_WAIT_MASK 요청을 받으면 SerCx의 요청 처리기는 EvtSerCxWaitmask 콜백 함수를 호출하여 대기 마스크가 변경되었음을 직렬 컨트롤러 드라이버에 알립니다. 대기 마스크는 직렬 컨트롤러가 모니터링할 하드웨어 이벤트 집합을 지정합니다. 이 호출 중에 드라이버는 이전 EvtSerCxWaitmask 호출에서 지정되었을 수 있는 모든 이전 대기 마스크를 삭제한 다음 새 대기 마스크에서 이벤트를 검색하도록 직렬 컨트롤러 하드웨어를 구성합니다.

나중에 새 대기 마스크의 이벤트가 발생하면 드라이버는 SerCxCompleteWait 를 호출하여 SerCx에 이벤트를 알립니다. 이전에 보낸 IOCTL_SERIAL_WAIT_ON_MASK 요청이 보류 중인 경우 SerCxCompleteWait는 STATUS_SUCCESS 상태 발생한 이벤트를 나타내는 출력 대기 마스크를 사용하여 이 요청을 완료합니다. 그렇지 않으면 SerCxCompleteWait 은 향후 IOCTL_SERIAL_WAIT_ON_MASK 요청을 예상하여 이벤트를 내부 이벤트 기록에 저장합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8 시작해서 사용할 수 있습니다.
대상 플랫폼 유니버설
헤더 sercx.h
IRQL <= DISPATCH_LEVEL

추가 정보

EvtSerCxWaitmask

IOCTL_SERIAL_SET_WAIT_MASK

IOCTL_SERIAL_WAIT_ON_MASK

SERIAL_EV_XXX

SerCxGetWaitMask