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


Функция StorPortQueueWorkItem (storport.h)

StorPortQueueWorkItem помещает рабочий элемент Storport в очередь для выполнения в контексте системного рабочего потока (ядра).

Синтаксис

ULONG StorPortQueueWorkItem(
  [in]           PVOID        HwDeviceExtension,
  [in]           PHW_WORKITEM WorkItemCallback,
  [in]           PVOID        Worker,
  [in, optional] PVOID        Context
);

Параметры

[in] HwDeviceExtension

Указатель на расширение аппаратного устройства для адаптера шины узла (HBA).

[in] WorkItemCallback

Указатель на подпрограмму обратного вызова рабочего элемента, предоставляемую мини-портом. Эта подпрограмма вызывается в контексте системного потока для обработки запланированного рабочего элемента, на который указывает рабочая роль .

[in] Worker

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

[in, optional] Context

Необязательный контекст для рабочей роли , обрабатываемой подпрограммой обратного вызова в WorkItemCallback.

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

Подпрограмма StorPortQueueWorkItem возвращает один из следующих кодов состояния:

Код возврата Описание
STOR_STATUS_BUSY Рабочий элемент уже поставлен в очередь для обработки.
STOR_STATUS_INVALID_DEVICE_STATE Рабочий элемент не может быть помещен в очередь, так как устройство находится в процессе удаления.
STOR_STATUS_INVALID_IRQL Текущее значение IRQL больше DISPATCH_LEVEL.
STOR_STATUS_INVALID_PARAMETER HwDeviceExtension, Worker или WorkItemCallback имеет значение NULL.
STOR_STATUS_SUCCESS Рабочий элемент успешно поставлен в очередь.

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows 8 и более поздних версиях Windows.
Целевая платформа Универсальное
Верхняя часть storport.h (включая Storport.h)
IRQL <= DISPATCH_LEVEL

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

HwStorWorkItem

StorPortFreeWorker

StorPortInitializeWorker