IoRequestDpc-Funktion (wdm.h)
Die IoRequestDpc-Routine stellt eine vom Treiber bereitgestellte DpcForIsr-Routine in die Warteschlange, um die interruptgesteuerte E/A-Verarbeitung bei einem niedrigeren IRQL abzuschließen.
Syntax
void IoRequestDpc(
[in] PDEVICE_OBJECT DeviceObject,
[in] PIRP Irp,
[in] __drv_aliasesMem PVOID Context
);
Parameter
[in] DeviceObject
Zeiger auf das Geräteobjekt, für das die Anforderung verarbeitet wird, die den Interrupt verursacht hat.
[in] Irp
Zeiger auf den aktuellen IRP für das angegebene Gerät.
[in] Context
Zeiger auf einen treiberbestimmten Kontext, der an die DPC-Routine übergeben werden soll.
Rückgabewert
Keine
Bemerkungen
Aufrufer von IoRequestDpc müssen unter DIRQL ausgeführt werden.
Treiber rufen IoRequestDpc aus einer InterruptService-Routine auf. Daher wird IoRequestDpc mit dem DIRQL-Wert ausgeführt, der von SynchronizeIrql angegeben wurde, als der Treiber IoConnectInterrupt aufgerufen hat. Es ist jedoch auch möglich, einen DPC bei jedem IRQL >= DISPATCH_LEVEL mithilfe der KeXxxDpc-Routinen in die Warteschlange zu stellen. Weitere Informationen finden Sie unter Welchen DPC-Typ sollten Sie verwenden?
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar ab Windows 2000. |
Zielplattform | Desktop |
Header | wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h) |
IRQL | DIRQL |