다음을 통해 공유


CMsgThread.PutThreadMsg 메서드

[이 페이지와 연결된 기능인 DirectShow는 레거시 기능입니다. MediaPlayer, IMFMediaEngine 및 Media Foundation의 오디오/비디오 캡처로 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드가 DirectShow 대신 Media Foundation에서 MediaPlayer, IMFMediaEngine오디오/비디오 캡처를 사용하는 것이 좋습니다. 가능한 경우 레거시 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 클래스