Функция 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 |