NetTxQueueNotifyMoreCompletedPacketsAvailable 함수(nettxqueue.h)
클라이언트 드라이버는 NetTxQueueNotifyMoreCompletedPacketsAvailable 을 호출하여 NetAdapterCx가 클라이언트의 EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED 이벤트 콜백 루틴을 호출한 후 큐 작업을 다시 시작합니다.
구문
void NetTxQueueNotifyMoreCompletedPacketsAvailable(
[_In_] NETPACKETQUEUE PacketQueue
);
매개 변수
[_In_] PacketQueue
순 전송 큐에 대한 핸들입니다.
반환 값
없음
설명
이 함수는 폴링을 사용하지 않도록 설정한 경우에만 호출해야 합니다.
NetAdapterCx가 NotificationEnabled가 TRUE로 설정된 클라이언트 드라이버의 EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED 이벤트 콜백 루틴을 호출하면 클라이언트는 큐의 하드웨어 인터럽트를 사용하도록 설정합니다. 디바이스가 하드웨어 인터럽트를 생성하는 경우 클라이언트는 일반적으로 전송 큐의 NET_RING 보류 중인 NET_PACKET 완료한 후 *EVT_WDF_INTERRUPT_DPC 콜백 함수에서 NetTxQueueNotifyMoreCompletedPacketsAvailable을 호출합니다.
클라이언트는 알림을 사용하도록 설정할 때만 NetTxQueueNotifyMoreCompletedPacketsAvailable 을 호출해야 합니다. EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED 대한 최신 호출에 NotificationEnabled가 FALSE로 설정된 경우 클라이언트는 NetTxQueueNotifyMoreCompletedPacketsAvailable을 호출하지 않아야 합니다. NetAdapterCx는 EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED 반복적으로 호출하기 때문에 클라이언트는 몇 가지 사례를 놓치고 NotificationEnabled가 FALSE로 설정된 경우 NetTxQueueNotifyMoreCompletedPacketsAvailable을 호출할 수 있습니다. 이러한 경우 호출은 no-op이 됩니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
최소 KMDF 버전 | 1.27 |
최소 UMDF 버전 | 2.33 |
머리글 | nettxqueue.h(netadaptercx.h 포함) |
IRQL | <= HIGH_LEVEL |