Функция KsPinAttemptProcessing (ks.h)
Функция KsPinAttemptProcessing используется для возобновления обработки на определенном закреплении в фильтре с закреплением. Он пытается инициировать обработку на Пин-код путем отправки вызова отправки обработки в объект обработки Пин-код.
Синтаксис
void KsPinAttemptProcessing(
[in] PKSPIN Pin,
[in] BOOLEAN Asynchronous
);
Параметры
[in] Pin
Указатель на структуру KSPIN, представляющую объект пин-кода AVStream, на котором выполняется попытка обработки.
Предупреждение
Этот параметр является обязательным. При вызове KsPinAttemptProcessing со значением Pin значением NULLможет привести к нестабильности системы.
[in] Asynchronous
Этот параметр указывает, должна ли обработка выполняться синхронно или асинхронно. Если TRUE, обработка всегда асинхронна. Однако синхронная обработка выполняется только в определенных обстоятельствах. Дополнительные сведения см. в разделе "Примечания" ниже.
Возвращаемое значение
Никакой
Замечания
Мини-driver может потребоваться вызвать KsPinAttemptProcessing для возобновления обработки в различных ситуациях. Например, если клиент отключил шлюз управления обработкой с KsGateTurnInputOff, вызовите эту функцию при готовности к обработке. Обратите внимание, что это вызывает только отправку обработки, если шлюз управления процессом находится в открытом состоянии. Другая ситуация включает мини-driver, ранее возвращающий STATUS_PENDING в диспетчер обработки. Дополнительные сведения см. в разделе перезапуска обработки в AVStream и шлюзах управления потоками в AVStream.
Диспетчер обработки выполняется синхронно или асинхронно, а только, если шлюз управления обработкой открыт. Флаг асинхронного указывает предпочтения мини-driver. Если мини-driver запрашивает асинхронную отправку процесса, то она всегда асинхронна. Тем не менее, даже если вызывающий объект задает асинхронныйзначение false, синхронная диспетчеризация возникает только в том случае, если система работает в IRQL меньше максимальной обработки IRQL. Другими словами, если мини-driver не указывает обработку уровня отправки и вызов выполняется в IRQL = DISPATCH_LEVEL, вызов выполняется в асинхронном рабочем элементе PASSIVE_LEVEL независимо от значения асинхронных. Дополнительные сведения см. в разделе Filter-Centric Обработка и Pin-Centric обработки.
Требования
Требование | Ценность |
---|---|
целевая платформа | Всеобщий |
заголовка | ks.h (include Ks.h) |
библиотеки | Ks.lib |
IRQL | <=DISPATCH_LEVEL (см. примечания) |