IoRequestDpc 函数 (wdm.h)

IoRequestDpc 例程将驱动程序提供的 DpcForIsr 例程排队,以在较低的 IRQL 中完成中断驱动的 I/O 处理。

语法

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

参数

[in] DeviceObject

指向正在处理导致中断的请求的设备对象的指针。

[in] Irp

指向指定设备的当前 IRP 的指针。

[in] Context

指向要传递给 DPC 例程的驱动程序确定上下文的指针。

返回值

备注

IoRequestDpc 的调用方必须在 DIRQL 上运行。

驱动程序从 InterruptService 例程调用 IoRequestDpc。 因此,IoRequestDpc 在驱动程序调用 IoConnectInterrupt 时以 SynchronizeIrql 指定的 DIRQL 值运行。 但是,也可以使用 Ke Xxx Dpc 例程在任何 IRQL >= DISPATCH_LEVEL对 DPC 进行排队。 有关详细信息,请参阅 应使用哪种类型的 DPC?

要求

要求
最低受支持的客户端 从 Windows 2000 开始可用。
目标平台 桌面
标头 wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h)
IRQL DIRQL

另请参阅

IoInitializeDpcRequest

KeInitializeDpc

KeInsertQueueDpc