NetRxQueueNotifyMoreReceivedPacketsAvailable 함수(netrxqueue.h)

클라이언트 드라이버는 NetAdapterCx가 클라이언트의 EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED 이벤트 콜백 루틴을 호출한 후 NetRxQueueNotifyMoreReceivedPacketsAvailable을 호출하여 큐 작업을 다시 시작합니다.

구문

void NetRxQueueNotifyMoreReceivedPacketsAvailable(
  [_In_] NETPACKETQUEUE PacketQueue
);

매개 변수

[_In_] PacketQueue

net receive queue 개체에 대한 핸들입니다.

반환 값

없음

설명

이 함수는 폴링을 사용하지 않도록 설정한 경우에만 호출해야 합니다.

NetAdapterCx가 NotificationEnabledTRUE로 설정된 클라이언트 드라이버의 EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED 이벤트 콜백 루틴을 호출하면 클라이언트는 큐의 하드웨어 인터럽트를 사용하도록 설정합니다. 디바이스가 하드웨어 인터럽트를 생성하면 클라이언트는 일반적으로 수신 큐의 NET_RING 보류 중인 NET_PACKET 완료한 후 EVT_WDF_INTERRUPT_DPC 콜백 함수에서 NetRxQueueNotifyMoreReceivedPacketsAvailable을 호출합니다.

클라이언트는 알림을 사용하도록 설정할 때만 NetRxQueueNotifyMoreReceivedPacketsAvailable 을 호출해야 합니다. EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED 대한 최신 호출에 NotificationEnabledFALSE로 설정된 경우 클라이언트는 NetRxQueueNotifyMoreReceivedPacketsAvailable을 호출하지 않아야 합니다. NetAdapterCx는 EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED 반복적으로 호출하기 때문에 NotificationEnabledFALSE로 설정된 경우 클라이언트가 몇 가지 사례를 놓치고 NetRxQueueNotifyMoreReceivedPacketsAvailable을 호출할 수 있습니다. 이러한 경우 호출은 no-op이 됩니다.

요구 사항

요구 사항
대상 플랫폼 유니버설
최소 KMDF 버전 1.27
머리글 netrxqueue.h(netadaptercx.h 포함)
IRQL <= HIGH_LEVEL

추가 정보

EVT_PACKET_QUEUE_ADVANCE

EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED