NdisAllocateIoWorkItem, fonction (ndis.h)
Les pilotes NDIS appellent la fonction NdisAllocateIoWorkItem pour allouer un élément de travail. Pour plus d’informations, consultez éléments de travail NDIS I/O.
Syntaxe
NDIS_HANDLE NdisAllocateIoWorkItem(
[in] NDIS_HANDLE NdisObjectHandle
);
Paramètres
[in] NdisObjectHandle
Handle d’un objet NDIS associé à un objet de périphérique ou à un objet de pilote.
Valeur de retour
Si NdisAllocateIoWorkItem alloue correctement un élément de travail, il retourne un handle à l’élément de travail. En cas d’échec, NdisAllocateIoWorkItem retourne NULL.
Remarques
Les pilotes miniport NDIS passent NdisAllocateIoWorkItem l’une des deux poignées : la poignée d’adaptateur transmise à la fonction MiniportInitializeEx ou le handle de pilote miniport retourné par NDIS lorsque le pilote miniport appelé NdisMRegisterMiniportDriver.
Les pilotes de filtre NDIS peuvent passer NdisAllocateIoWorkItem le handle du pilote de filtre retourné par NDIS lorsque le pilote de filtre appelé NdisFRegisterFilterDriver.
Les pilotes miniport NDIS et les pilotes de filtre peuvent également passer NdisAllocateIoWorkItem le handle de périphérique NDIS retourné par NDIS lorsque le pilote appelé NdisRegisterDeviceEx. NdisAllocateIoWorkItem obtient l’objet de périphérique ou l’objet de pilote associé au handle et transmet l’objet de périphérique ou le pilote à la fonction IoAllocateWorkItem.
Les pilotes NDIS doivent appeler la fonction NdisFreeIoWorkItem pour libérer les ressources associées à un élément de travail qui NdisAllocateIoWorkItem alloué.
Les pilotes peuvent appeler NdisFreeIoWorkItem dans la routine de rappel transmise à NdisQueueIoWorkItem.
Si un pilote miniport a utilisé le handle passé à MiniportInitializeEx lorsqu’il a appelé NdisAllocateIoWorkItem, l’élément de travail doit être libéré avant ou dans l’appel aux pilotes MiniportHaltEx fonction.
Si un pilote miniport a utilisé le handle qui NdisMRegisterMiniportDriver retourné lorsque le pilote appelé NdisAllocateIoWorkItem, le pilote doit libérer l’élément de travail avant le déchargement du pilote.
En général, un pilote doit libérer l’élément de travail avant le déchargement du pilote.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Prise en charge dans NDIS 6.0 et versions ultérieures. |
plateforme cible | Universel |
d’en-tête | ndis.h (include Ndis.h) |
bibliothèque | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
règles de conformité DDI | Init_NdisAllocateIoWorkItem(ndis), Irql_Miscellaneous_Function(ndis) |