Поделиться через


Метод CBaseAllocator.NotifySample

[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]

Метод NotifySample освобождает все потоки, ожидающие примеров.

Синтаксис

void NotifySample();

Параметры

Этот метод не имеет параметров.

Возвращаемое значение

Этот метод не возвращает значение.

Комментарии

При наличии потоков, ожидающих выборки, значение CBaseAllocator::m_lWaiting больше нуля. Если m_lWaiting больше нуля, этот метод вызывает функцию ReleaseSemaphore в семафоре CBaseAllocator::m_hSem , активируя все ожидающие потоки. Он также сбрасывает m_lWaiting к нулю.

Этот метод вызывается из метода CBaseAllocator::ReleaseBuffer , когда пример возвращается в список свободных; и из метода CBaseAllocator::D ecommit при списании распределителя.

Требования

Требование Значение
Заголовок
Amfilter.h (включая Streams.h)
Библиотека
Strmbase.lib (розничные сборки);
Strmbasd.lib (отладочные сборки)

См. также раздел

Класс CBaseAllocator