Freigeben über


IoRequestDpc-Funktion (wdm.h)

Die IoRequestDpc Routinewarteschlangen eine vom Treiber bereitgestellte DpcForIsr Routine, um die interruptgesteuerte E/A-Verarbeitung bei einer niedrigeren IRQL abzuschließen.

Syntax

void IoRequestDpc(
  [in] PDEVICE_OBJECT         DeviceObject,
  [in] PIRP                   Irp,
  [in] __drv_aliasesMem PVOID Context
);

Parameter

[in] DeviceObject

Zeigen Sie auf das Geräteobjekt, für das die Anforderung, für die der Interrupt verursacht wurde, verarbeitet wird.

[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

Nichts

Bemerkungen

Aufrufer von IoRequestDpc müssen unter DIRQL ausgeführt werden.

Treiber rufen IoRequestDpc aus einer InterruptService- Routine auf. Aus diesem Fall wird IoRequestDpc mit dem DIRQL-Wert ausgeführt, der durch SynchronizeIrql- angegeben wurde, wenn der Treiber IoConnectInterruptaufgerufen wurde. 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
mindestens unterstützte Client- Ab Windows 2000 verfügbar.
Zielplattform- Desktop
Header- wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
IRQL- DIRQL

Siehe auch

IoInitializeDpcRequest

KeInitializeDpc

KeInsertQueueDpc