Функция KsQueueWorkItem (ks.h)

Функция KsQueueWorkItem помещает указанный рабочий элемент в очередь с рабочей ролью, созданной ранее функцией KsRegisterWorker .

Синтаксис

KSDDKAPI NTSTATUS KsQueueWorkItem(
  [in] PKSWORKER        Worker,
  [in] PWORK_QUEUE_ITEM WorkItem
);

Параметры

[in] Worker

Указывает ранее выделенную рабочую роль.

[in] WorkItem

Указывает инициализированный рабочий элемент для постановки в очередь. Этот рабочий элемент связан только с рабочей ролью, если он находится в очереди. Рабочий элемент должен быть инициализирован IoAllocateWorkItem.

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

Функция KsQueueWorkItem возвращает STATUS_SUCCESS, если рабочий элемент был поставлен в очередь, или в случае неудачи функция возвращает ошибку при попытке создать новую рабочую роль, если в настоящее время нет доступных потоков.

Комментарии

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

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть ks.h (включая Ks.h)
Библиотека Ks.lib