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


Функция IoQueueWorkItemEx (wdm.h)

Подпрограмма IoQueueWorkItemEx связывает подпрограмму WorkItemEx с рабочим элементом и вставляет рабочий элемент в очередь для последующей обработки системным рабочим потоком.

Синтаксис

void IoQueueWorkItemEx(
  [in]           __drv_aliasesMem PIO_WORKITEM IoWorkItem,
  [in]           PIO_WORKITEM_ROUTINE_EX       WorkerRoutine,
  [in]           WORK_QUEUE_TYPE               QueueType,
  [in, optional] __drv_aliasesMem PVOID        Context
);

Параметры

[in] IoWorkItem

Указатель на структуру IO_WORKITEM , которая была выделена IoAllocateWorkItem или инициализирована IoInitializeWorkItem.

[in] WorkerRoutine

Указатель на подпрограмму WorkItemEx .

[in] QueueType

Задает значение WORK_QUEUE_TYPE , указывающее тип системного рабочего потока для обработки рабочего элемента. Драйверы должны указывать DelayedWorkQueue.

[in, optional] Context

Указывает сведения о драйвере для рабочего элемента. Система передает это значение в качестве параметра Contextв WorkItemEx.

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

None

Remarks

Подпрограмма IoQueueWorkItemEx отличается от IoQueueWorkItem тем, что параметр WorkerRoutine является указателем на подпрограмму обратного вызова WorkItemEx , которая предоставляет драйверу указатель на структуру IO_WORKITEM для рабочего элемента.

Дополнительные сведения о рабочих элементах см. в разделе Потоки системной рабочей роли.

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows Vista и более поздних версиях Windows.
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

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

IO_WORKITEM

IoAllocateWorkItem

IoInitializeWorkItem

IoQueueWorkItem

WorkItemEx