функция обратного вызова NDIS_PD_FREE_QUEUE (ndis.h)
Платформа PacketDirect (PD) вызывает функцию NdisPDFreeQueue драйвера минипорта с поддержкой PD, чтобы освободить очередь.
Синтаксис
NDIS_PD_FREE_QUEUE NdisPdFreeQueue;
VOID() NdisPdFreeQueue(
[in] NDIS_PD_QUEUE *NdisPDQueue
)
{...}
Параметры
[in] NdisPDQueue
Любая пустая очередь, которая должна быть освобождена из памяти. Дополнительные сведения см. в статье Структура NDIS_PD_QUEUE .
Возвращаемое значение
Эта функция обратного вызова не возвращает значение.
Комментарии
Перед выполнением этого вызова вызывающий объект отвечает за то, чтобы очередь PD была пуста. Вызывающий объект также отвечает за очистку всех фильтров, предназначенных для этой очереди, перед закрытием очереди.
Примеры
Чтобы определить функцию NdisPDFreeQueue , необходимо сначала предоставить объявление функции, определяющее тип определяемой функции. Windows предоставляет набор типов функций для драйверов. Объявление функции с помощью типов функций помогает анализу кода для драйверов, средству проверки статических драйверов (SDV) и другим средствам проверки находить ошибки, и это требование для написания драйверов для операционной системы Windows.Например, чтобы определить функцию NdisPDFreeQueue с именем MyPDFreeQueue, используйте тип NDIS_PD_FREE_QUEUE , как показано в этом примере кода:
NDIS_PD_FREE_QUEUE MyPDFreeQueue;
Затем реализуйте функцию следующим образом:
_Use_decl_annotations_
VOID
MyPDFreeQueue(
NDIS_PD_QUEUE* NdisPDQueue
)
{...}
Тип функции NDIS_PD_FREE_QUEUE определен в файле заголовка Ntddndis.h. Чтобы более точно определить ошибки при запуске средств анализа кода, обязательно добавьте заметку Use_decl_annotations в определение функции. Заметка Use_decl_annotations гарантирует использование заметок, которые применяются к типу функции NDIS_PD_FREE_QUEUE в файле заголовка. Дополнительные сведения о требованиях к объявлениям функций см. в разделе Объявление функций с помощью типов ролей функций для драйверов NDIS.
Сведения о Use_decl_annotations см. в статье О поведении функции.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10 |
Минимальная версия сервера | Windows Server 2016 |
Целевая платформа | Windows |
Header | ndis.h |
IRQL | PASSIVE_LEVEL |