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