Freigeben über


StorPortQueueWorkItem-Funktion (storport.h)

StorPortQueueWorkItem stellt ein Storport-Arbeitselement in die Warteschlange, das im Kontext eines Systemarbeitsthreads (Kernel) ausgeführt werden soll.

Syntax

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

Parameter

[in] HwDeviceExtension

Ein Zeiger auf die Hardwaregeräteerweiterung für den Host bus adapter (HBA).

[in] WorkItemCallback

Ein Zeiger auf eine vom Miniport bereitgestellte Rückrufroutine für Arbeitselemente. Diese Routine wird im Kontext des Systemthreads aufgerufen, um das geplante Arbeitselement zu verarbeiten, auf das Worker verweist.

[in] Worker

Ein Zeiger auf einen undurchsichtigen Puffer für das zugeordnete und initialisierte Arbeitselement, das von StorPortInitializeWorker zurückgegeben wird.

[in, optional] Context

Optionaler Kontext für den Worker , der von der Rückrufroutine in WorkItemCallback verarbeitet wird.

Rückgabewert

Die StorPortQueueWorkItem-Routine gibt einen der folgenden status Codes zurück:

Rückgabecode Beschreibung
STOR_STATUS_BUSY Das Arbeitselement befindet sich bereits in der Warteschlange für die Verarbeitung.
STOR_STATUS_INVALID_DEVICE_STATE Das Arbeitselement kann nicht in die Warteschlange eingereiht werden, da das Gerät gerade entfernt wird.
STOR_STATUS_INVALID_IRQL Die aktuelle IRQL ist größer als DISPATCH_LEVEL.
STOR_STATUS_INVALID_PARAMETER HwDeviceExtension, Worker oder WorkItemCallback ist NULL.
STOR_STATUS_SUCCESS Das Arbeitselement wurde erfolgreich in die Warteschlange eingereiht.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows 8 und höheren Versionen von Windows.
Zielplattform Universell
Header storport.h (Storport.h einschließen)
IRQL <= DISPATCH_LEVEL

Weitere Informationen

HwStorWorkItem

StorPortFreeWorker

StorPortInitializeWorker