IDmaChannelSlave::WaitForTC 方法 (portcls.h)

WaitForTC 方法等待 DMA 传输终端计数完成,或者如果指定的超时间隔最先过期,则超时。

语法

NTSTATUS WaitForTC(
  ULONG Timeout
);

参数

Timeout

指定超时间隔(以微秒为单位)。 此间隔是方法在超时之前等待传输完成的时间长度。指定的超时间隔向下舍入为最接近的十微秒增量。

返回值

WaitForTC 方法返回 NTSTATUS。 如果调用成功,它将返回STATUS_SUCCESS。 否则,该方法将返回相应的错误代码。

注解

注意

Microsoft 支持多样化和包容性的环境。 本文包含 Microsoft 无偏见通信风格指南 识别为排除性的术语的参考。 为了保持一致性,本文使用了单词或短语,因为它当前显示在软件中。 当软件更新为删除该语言时,本文将更新为保持一致。

只应在两种情况下调用此方法:

  1. 向硬件发送停止请求后,微型端口驱动程序会调用 WaitForTC,以便等待 DMA 完成,然后再继续执行。

  2. 对于未自动初始化的 DMA 硬件,微型端口驱动程序可以随时调用 WaitForTC 以等待 DMA 传输完成。

由于此方法只是等待 DMA 传输完成或超时,因此 WaitForTC 的调用方必须在 IRQL PASSIVE_LEVEL运行。

要求

要求
Header portcls.h
IRQL PASSIVE_LEVEL (请参阅“备注”部分。)

另请参阅

IDmaChannelSlave 接口