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


Метод CMsgThread.PutThreadMsg

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

Помещает в очередь запрос на выполнение рабочим потоком.

Синтаксис

void PutThreadMsg(
   UINT     uMsg,
   DWORD    dwMsgFlags,
   LPVOID   lpMsgParam,
   CAMEvent *pEvent = NULL
);

Параметры

uMsg

Код запроса.

DwMsgFlags

Необязательный параметр flags.

lpMsgParam

Необязательный указатель на блок данных, содержащий дополнительные параметры или возвращаемые значения. Должен быть статическим или выделенным в куче, а не автоматическим.

pEvent

Необязательный указатель на объект события, который будет сигнализироваться после завершения.

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

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

Комментарии

Эта функция-член помещает в очередь запрос на выполнение рабочим потоком. Параметры этой функции-члена будут помещены в очередь (в объекте CMsg ) и переданы в функцию-член CMsgThread::ThreadMessageProc рабочего потока. Эта функция-член возвращается сразу после постановки запроса в очередь и не ожидает выполнения запроса потоком. Функция-член CMsgThread::ThreadMessageProc производного класса определяет четыре параметра.

Эта функция-член использует многопоточный безопасный список, поэтому можно безопасно выполнять несколько вызовов этой функции-члена из разных потоков.

Требования

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

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

Класс CMsgThread