NdisAllocateIoWorkItem-Funktion (ndis.h)
NDIS-Treiber rufen die NdisAllocateIoWorkItem--Funktion auf, um eine Arbeitsaufgabe zuzuweisen. Weitere Informationen finden Sie unter NDIS I/O Work Items.
Syntax
NDIS_HANDLE NdisAllocateIoWorkItem(
[in] NDIS_HANDLE NdisObjectHandle
);
Parameter
[in] NdisObjectHandle
Das Handle eines NDIS-Objekts, das einem Geräteobjekt oder Treiberobjekt zugeordnet ist.
Rückgabewert
Wenn NdisAllocateIoWorkItem erfolgreich eine Arbeitsaufgabe zuweist, wird ein Handle an die Arbeitsaufgabe zurückgegeben. Wenn ein Fehler auftritt, gibt NdisAllocateIoWorkItemNULL-zurück.
Bemerkungen
NDIS miniport drivers pass NdisAllocateIoWorkItem eines von zwei Handles: der Adapterziehpunkt, den NDIS an die MiniportInitializeEx-Funktion übergeben hat, oder der Miniport-Treiberhandle, den NDIS beim Aufrufen des Miniporttreibers zurückgegeben hat NdisMRegisterMiniportDriver.
NDIS-Filtertreiber können NdisAllocateIoWorkItem den von NDIS zurückgegebenen Filtertreiberhandle übergeben, wenn der Filtertreiber NdisFRegisterFilterDriveraufgerufen wird.
NDIS miniport drivers and filter drivers can also pass NdisAllocateIoWorkItem the NDIS device handle that NDIS returned when the driver called NdisRegisterDeviceEx. NdisAllocateIoWorkItem ruft das Dem Handle zugeordnete Geräteobjekt oder Treiberobjekt ab und übergibt das Geräteobjekt oder Treiberobjekt an die IoAllocateWorkItem--Funktion.
NDIS-Treiber müssen die NdisFreeIoWorkItem--Funktion aufrufen, um die Ressourcen freizugeben, die einer Arbeitsaufgabe zugeordnet NdisAllocateIoWorkItem zugeordnet sind.
Treiber können NdisFreeIoWorkItem- in der Rückrufroutine aufrufen, die an NdisQueueIoWorkItemübergeben wird.
Wenn ein Miniporttreiber den Handle verwendet hat, den NDIS an MiniportInitializeEx übergeben hat, wenn er NdisAllocateIoWorkItem-aufgerufen hat, muss die Arbeitsaufgabe vor oder im Aufruf der Treiber MiniportHaltEx Funktion freigegeben werden.
Wenn ein Miniporttreiber das Handle verwendet hat, das NdisMRegisterMiniportDriver zurückgegeben wird, wenn der Treiber NdisAllocateIoWorkItemaufgerufen wird, muss der Treiber die Arbeitsaufgabe freigeben, bevor der Treiber entladen wird.
Im Allgemeinen muss ein Treiber die Arbeitsaufgabe freigeben, bevor der Treiber entladen wird.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Unterstützt in NDIS 6.0 und höher. |
Zielplattform- | Universal |
Header- | ndis.h (include Ndis.h) |
Library | Ndis.lib |
IRQL- | <= DISPATCH_LEVEL |
DDI-Complianceregeln | Init_NdisAllocateIoWorkItem(ndis), Irql_Miscellaneous_Function(ndis) |