Метод CDynamicOutputPin.AsynchronousBlockOutputPin
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]
Метод AsynchronousBlockOutputPin
блокирует закрепление. Метод может вернуться до блокировки пин-кода.
Синтаксис
HRESULT AsynchronousBlockOutputPin(
HANDLE hNotifyCallerPinBlockedEvent
);
Параметры
-
hNotifyCallerPinBlockedEvent
-
Дескриптор события. Событие получает сигнал, когда выходной контакт заблокирован или если вызывающий объект отменяет операцию блокировки.
Возвращаемое значение
Возвращает значение HRESULT . Возможные значения включают значения, приведенные в следующей таблице.
Код возврата | Описание |
---|---|
|
Успешно. |
|
Закрепление уже заблокировано в другом потоке. |
|
Закрепление уже заблокировано в вызывающем потоке. |
Комментарии
Не вызывайте этот метод из потока потоковой передачи.
Если поток потоковой передачи не использует контакт, этот метод немедленно блокирует закрепление. В противном случае задается состояние закрепления "ожидание" и возвращается значение . После завершения операции потоковой передачи поток потоковой передачи вызывает метод CDynamicOutputPin::StopUsingOutputPin , который блокирует закрепление и сообщает о событии hNotifyCallerPinBlockedEvent . Чтобы отменить ожидающий блок, вызовите метод CDynamicOutputPin::UnblockOutputPin .
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|