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


Функция NetTxQueueNotifyMoreCompletedPacketsAvailable (nettxqueue.h)

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

Синтаксис

void NetTxQueueNotifyMoreCompletedPacketsAvailable(
  [_In_] NETPACKETQUEUE PacketQueue
);

Параметры

[_In_] PacketQueue

Дескриптор для очереди сетевой передачи.

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

None

Remarks

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

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

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

Требования

Требование Значение
Целевая платформа Универсальное
Минимальная версия KMDF 1.27
Минимальная версия UMDF 2.33
Верхняя часть nettxqueue.h (включая netadaptercx.h)
IRQL <= HIGH_LEVEL

См. также раздел

EVT_PACKET_QUEUE_ADVANCE

EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED