StorPortIssueDpc 函数 (storport.h)

StorPortIssueDpc 例程 (DPC) 发出延迟过程调用。

语法

BOOLEAN StorPortIssueDpc(
  [in] PVOID     DeviceExtension,
  [in] PSTOR_DPC Dpc,
  [in] PVOID     SystemArgument1,
  [in] PVOID     SystemArgument2
);

参数

[in] DeviceExtension

指向每个适配器设备扩展的指针。

[in] Dpc

指向包含 StorPortInitializeDpc 例程返回STOR_DPC类型的初始化 DPC 对象的缓冲区的指针。

[in] SystemArgument1

指向将传递给延迟例程的调用方提供的信息的指针。

[in] SystemArgument2

指向将传递给延迟例程的调用方提供的信息的指针。

返回值

如果成功将 DPC 插入到 DPC 队列中, StorPortIssueDpc 例程将返回 TRUE ,否则返回 FALSE

注解

StorPortIssueDpc 例程调用 KeInsertQueueDpc 内核例程来对 DPC 进行排队。 KeInsertQueueDpc 内核例程不允许多次将 DPC 排队。 因此,如果 Dpc 参数指定的 DPC 对象已在 DPC 队列中, KeInsertQueueDpc 将忽略队列请求。 这可确保使用 StorPortInitializeDpc 初始化的延迟例程始终与自身同步。 换句话说,调用方不需要按顺序对 StorPortIssueDpc 例程的调用,以确保例程不会同时运行多个实例。

如果微型端口驱动程序具有多个必须由同一 DPC 执行的工作项,微型端口驱动程序必须确保每个工作项在为下一个工作项颁发 DPC 之前完成。

要求

要求
目标平台 通用
标头 storport.h (包括 Storport.h)

另请参阅

KeInsertQueueDpc

STOR_DPC

StorPortInitializeDpc