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