функция обратного вызова 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
Необязательный контекст, предоставляемый мини-портом в параметре Callbackобъекта StorPortQueueWorkItem.
[in] Worker
Указатель на непрозрачный буфер, содержащий сведения контекста для рабочего элемента, возвращенного StorPortInitializeWorker.
Возвращаемое значение
None
Remarks
При необходимости рабочий элемент можно поместить в очередь в HwStorWorkItem. Вызовите StorPortQueueWorkItem с текущим рабочим элементом , чтобы повторно использовать его. В противном случае вызовите StorPortFreeWorker , чтобы освободить рабочий элемент.
При вызове обратного вызова Storport не получает блокировок. Мини-порт отвечает за синхронизацию, необходимую в процедуре обратного вызова.
Имя HwStorWorkItem — это просто заполнитель для функции miniport, на которую указывает параметр Callbackобъекта StorPortQueueWorkItem. Фактический прототип этой подпрограммы определен в Storport.h следующим образом:
typedef
VOID
HW_WORKITEM (
_In_ PVOID HwDeviceExtension,
_In_Opt_ PVOID Context,
_In_ PVOID Worker,
);
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows 8 и более поздних версиях Windows. |
Целевая платформа | Универсальное |
Верхняя часть | storport.h (включая Storport.h) |
IRQL | PASSIVE_LEVEL |