функция обратного вызова EVT_PACKET_QUEUE_STOP (netpacketqueue.h)

Функция обратного вызова EvtPacketQueueStop — это необязательный обратный вызов, который реализуется драйвером клиента для остановки пути данных для очереди пакетов.

Синтаксис

EVT_PACKET_QUEUE_STOP EvtPacketQueueStop;

void EvtPacketQueueStop(
  [_In_] NETPACKETQUEUE PacketQueue
)
{...}

Параметры

[_In_] PacketQueue

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

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

None

Remarks

Это необязательный обратный вызов. Зарегистрируйте эту функцию обратного вызова в обратном вызове EVT_NET_ADAPTER_CREATE_TX(rxQueueContext)QUEUE . Задайте соответствующий элемент структуры NET_PACKET_QUEUE_CONFIG после инициализации структуры с помощью NET_PACKET_QUEUE_CONFIG_INIT, а затем вызовите NetTx(rxQueueContext)QueueCreate.

Этот обратный вызов не возвращает значение и поэтому не должен завершаться ошибкой, поэтому этот обратный вызов должен быть легкой функцией, которая выполняется быстро.

Клиентские драйверы не будут получать вызовы к EVT_PACKET_QUEUE_ADVANCE, EVT_PACKET_QUEUE_CANCEL или EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED после возврата EvtPacketQueueStop . Кроме того, EvtPacketQueueStop вызывается в том же контексте выполнения или потоке, что и EvtPacketQueueAdvance, EvtPacketQueueCancel и EvtPacketQueueSetNotificationEnabled, поэтому клиентские драйверы не должны синхронизироваться между этими функциями обратного вызова для отдельного экземпляра очереди.

Дополнительные сведения и схему, показывающую модель опроса пути данных NetAdapterCx, см. в разделе Очереди передачи и получения.

Требования

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

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

EVT_NET_ADAPTER_CREATE_RXQUEUE

EVT_NET_ADAPTER_CREATE_TXQUEUE

NetRxQueueCreate

NetTxQueueCreate

EVT_PACKET_QUEUE_START

EVT_PACKET_QUEUE_ADVANCE

EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED

EVT_PACKET_QUEUE_CANCEL