функция обратного вызова HW_WORKITEM (storport.h)
Функция обратного вызова с минипортом для обработки запроса рабочего элемента Storport.
Синтаксис
HW_WORKITEM HwWorkitem;
void HwWorkitem(
[in] PVOID HwDeviceExtension,
[in, optional] PVOID Context,
[in] PVOID Worker
)
{...}
Параметры
[in] HwDeviceExtension
Указатель на область хранения мини-порта для каждого HBA.
[in, optional] Context
Необязательный контекст, предоставляемый минипортом в параметре обратного вызова StorPortQueueWorkItem.
[in] Worker
Указатель на непрозрачный буфер, содержащий сведения о контексте для рабочего элемента, возвращаемого StorPortInitializeWorker.
Возвращаемое значение
Никакой
Замечания
При необходимости рабочий элемент можно в очереди в HwStorWorkItem. Вызовите StorPortQueueWorkItem с текущим рабочим элементом, чтобы повторно использовать его. В противном случае вызовите StorPortFreeWorker, чтобы освободить рабочий элемент.
При вызове обратного вызова блокировка не приобретается Storport. Минипорт отвечает за любую синхронизацию, необходимую в подпрограмме обратного вызова.
Имя HwStorWorkItem — это просто заполнитель функции минипорта, на которую указывает параметр обратного вызова StorPortQueueWorkItem. Фактический прототип этой подпрограммы определен в Storport.h следующим образом:
typedef
VOID
HW_WORKITEM (
_In_ PVOID HwDeviceExtension,
_In_Opt_ PVOID Context,
_In_ PVOID Worker,
);
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в Windows 8 и более поздних версиях Windows. |
целевая платформа | Всеобщий |
заголовка | storport.h (include Storport.h) |
IRQL | PASSIVE_LEVEL |