Поделиться через


Функция NetRxQueueNotifyMoreReceivedPacketsAvailable (netrxqueue.h)

Драйвер клиента вызывает NetRxQueueNotifyMoreReceivedPacketsAvailable для возобновления операций очереди после вызова netAdapterCx вызывает подпрограмму обратного вызова событий клиента EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED.

Синтаксис

void NetRxQueueNotifyMoreReceivedPacketsAvailable(
  [_In_] NETPACKETQUEUE PacketQueue
);

Параметры

[_In_] PacketQueue

Дескриптор для объекта очереди получения в сети.

Возвращаемое значение

Никакой

Замечания

Эта функция должна вызываться только при отключении опроса.

Когда NetAdapterCx вызывает подпрограмму обратного вызова EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED драйвера клиента с NotificationEnabled задано значение TRUE, клиент включает аппаратное прерывание очереди. Когда устройство создает аппаратное прерывание, клиент обычно вызывает NetRxQueueNotifyMoreReceivedPacketsAvailable из функции обратного вызова EVT_WDF_INTERRUPT_DPC после завершения ожидающего NET_PACKET в NET_RINGочереди получения.

Клиент должен вызывать только NetRxQueueNotifyMoreReceivedPacketsAvailable один раз за включение уведомления. Если последний вызов EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLEDNotificationEnabled имеет значение FALSE, клиент должен избегать вызова NetRxQueueNotifyMoreReceivedPacketsAvailable. Так как NetAdapterCx вызывает EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED неоднократно, клиент может пропустить несколько случаев и вызвать NetRxQueueNotifyMoreReceivedPacketsAvailable, если NotificationEnabled задано значение FALSE. В этих случаях вызов будет no-op.

Требования

Требование Ценность
целевая платформа Всеобщий
минимальная версия KMDF 1.27
минимальная версия UMDF 2.33
заголовка netrxqueue.h (include netadaptercx.h)
IRQL <= HIGH_LEVEL

См. также

EVT_PACKET_QUEUE_ADVANCE

EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED