KsPinAttemptProcessing 函数 (ks.h)

KsPinAttemptProcessing 函数用于恢复以引脚为中心的筛选器上特定引脚上的处理。 它尝试通过在 Pin 上启动处理,方法是向 Pin的处理对象发送处理调度调用。

语法

void KsPinAttemptProcessing(
  [in] PKSPIN  Pin,
  [in] BOOLEAN Asynchronous
);

参数

[in] Pin

指向 KSPIN 结构的指针,该结构表示要尝试处理的 AVStream 引脚对象。

警告

此参数是必需的。 如果使用 Pin 值调用 KsPinAttemptProcessing NULL,则系统不稳定可能会导致系统不稳定。

[in] Asynchronous

此参数指示微型驱动程序的首选项是应同步还是异步进行处理。 如果 TRUE,则处理始终是异步的。 但是,同步处理仅在某些情况下发生。 有关详细信息,请参阅下面的“备注”部分。

返回值

没有

言论

微型驱动程序可能需要调用 KsPinAttemptProcessing 以在各种情况下恢复处理。 例如,如果客户端已关闭处理控制门,KsGateTurnInputOff,则当准备好尝试处理时调用此函数。 请注意,这只会在进程控制门处于打开状态时导致处理调度。 另一种情况是微型驱动程序以前将STATUS_PENDING返回到处理调度。 有关详细信息,请参阅 在 AVStream 中重启处理,以及 AVStream 中的流控制门。

处理调度以同步或异步方式进行,并且仅在处理控制门处于打开状态时 异步 标志指定微型驱动程序的首选项。 如果微型驱动程序请求异步进程调度,则调度始终是异步的。 但是,即使调用方将 异步 设置为 FALSE,仅当系统当前在小于最大处理 IRQL 的 IRQL 上运行时,才会发生同步调度。 换句话说,如果微型驱动程序未指定调度级别处理,并且调用在 IRQL = DISPATCH_LEVEL,则无论 异步的值如何,调用都会在PASSIVE_LEVEL异步工作项中发生。 有关详细信息,请参阅 Filter-Centric 处理Pin-Centric 处理

要求

要求 价值
目标平台 普遍
标头 ks.h (包括 Ks.h)
Ks.lib
IRQL <=DISPATCH_LEVEL (请参阅备注)

另请参阅

KSFILTER_DISPATCH

KsFilterAttemptProcessing

KsGateCaptureThreshold