SerCx2PioTransmitPurgeFifoComplete 함수(sercx.h)
SerCx2PioTransmitPurgeFifoComplete 메서드는 직렬 컨트롤러 드라이버가 직렬 컨트롤러 하드웨어의 전송 FIFO에서 데이터 제거를 완료했음을 SerCx2(직렬 프레임워크 확장)의 버전 2에 알려줍니다.
구문
void SerCx2PioTransmitPurgeFifoComplete(
[in] SERCX2PIOTRANSMIT PioTransmit,
[in] ULONG BytesPurged
);
매개 변수
[in] PioTransmit
PIO 전송 개체에 대한 SERCX2PIOTRANSMIT 핸들입니다. 이 개체를 만들기 위해 이전에 SerCx2PioTransmitCreate 메서드를 호출한 직렬 컨트롤러 드라이버입니다.
[in] BytesPurged
직렬 컨트롤러 드라이버가 전송 FIFO에서 제거한 전송되지 않은 데이터의 바이트 수입니다.
반환 값
없음
설명
SerCx2는 구현된 경우 EvtSerCx2PioTransmitPurgeFifo 이벤트 콜백 함수를 호출하여 현재 PIO 전송 트랜잭션을 종료합니다. SerCx2는 이전에 클라이언트의 쓰기(IRP_MJ_WRITE) 요청에 대한 응답으로 이 트랜잭션을 시작했습니다. 예를 들어 클라이언트가 보류 중인 쓰기 요청을 취소하거나 쓰기 요청 시간이 초과되는 경우 SerCx2에서 이 함수를 호출할 수 있습니다. 자세한 내용은 읽기 및 쓰기 요청의 SerCx2 처리를 참조하세요.
EvtSerCx2PioTransmitPurgeFifo 함수 호출에 대한 응답으로 드라이버는 먼저 전송 FIFO에 남아 있는 모든 데이터를 삭제합니다. 그런 다음 드라이버는 SerCx2PioTransmitPurgeFifoComplete를 호출하여 SerCx2에 알립니다. SerCx2는 이 알림을 예상하며, 알림을 받을 때까지 쓰기 요청을 완료하지 않습니다.
직렬 컨트롤러 드라이버는 EvtSerCx2PioTransmitPurgeFifo 함수에 대한 호출에 대한 응답으로만 SerCx2PioTransmitPurgeFifoComplete 를 호출해야 합니다.
SerCx2는 BytesPurged 매개 변수 값을 사용하여 전송 FIFO가 제거되기 전에 성공적으로 전송된 바이트 수를 확인합니다. SerCx2에서는 시간이 초과되는 쓰기 요청을 완료하거나 하나 이상의 바이트가 전송된 후 취소되는 쓰기 요청을 완료하려면 이 정보가 필요합니다.
자세한 내용은 SerCx2 PIO-Transmit 트랜잭션을 참조하세요.
요구 사항
| 지원되는 최소 클라이언트 | Windows 8.1 시작해서 사용할 수 있습니다. |
| 대상 플랫폼 | 유니버설 |
| 헤더 | sercx.h |
| IRQL | <= DISPATCH_LEVEL |
참고 항목
피드백
다음에 대한 사용자 의견 제출 및 보기