KsGateGetStateUnsafe 函数 (ks.h)

KsGateGetStateUnsafe 函数以不安全的方式返回给定门(打开或关闭)的状态,与同步 无关

语法

BOOLEAN KsGateGetStateUnsafe(
  [in] PKSGATE Gate
);

参数

[in] Gate

指向 KSGATE 结构的指针,表示返回状态的门。

返回值

如果门处于打开状态,则此调用返回 true true;如果门关闭,FALSE

言论

由于 KsGateGetStateUnsafe 无法处理同步,因此,如果门在调用时处于从一种状态过渡到另一个状态,则获得与门的状态不一致的结果。

请考虑将门 A 的输出作为输入连接到门 B 的情况。转换到关闭,导致 B 从打开转换为关闭。 如果另一个线程同时调用 KsGateGetStateUnsafe A 关闭时间与 B 关闭的时间之间,则例程仍返回 B 处于打开状态。

KsGateGetStateUnsafe 返回 门>计数 是否大于零。 该函数不使用任何联锁函数来执行此作。 因此,调用在与同步无关的情况下执行。

要求

要求 价值
最低支持的客户端 Microsoft Windows XP 及更高版本的作系统以及 DirectX 8.0 及更高版本的 DirectX 版本中提供。
目标平台 桌面
标头 ks.h (包括 Ks.h)
IRQL 任何级别