CAMMsgEvent.WaitMsg 메서드
[이 페이지와 연결된 기능인 DirectShow는 레거시 기능입니다. MediaPlayer, IMFMediaEngine 및 Media Foundation의 오디오/비디오 캡처로 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드에서 DirectShow 대신 MediaPlayer, IMFMediaEngine 및 오디오/비디오 캡처를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]
메서드는 WaitMsg
전송된 메시지를 디스패치하는 동안 이벤트가 신호를 받을 때까지 기다립니다.
구문
BOOL WaitMsg(
DWORD dwTimeOut = INFINITE
);
매개 변수
-
dwTimeOut
-
선택적 시간 제한 값(밀리초)입니다.
반환 값
이벤트가 신호를 받으면 TRUE 를 반환하고, 시간 초과가 발생한 경우 FALSE 를 반환합니다.
설명
이 메서드는 PeekMessage 함수를 호출하여 메시지를 처리합니다. 이벤트를 기다리는 동안 스레드가 메시지를 처리해야 하는 경우 CAMEvent::Wait 대신 이 메서드를 호출합니다. 스레드가 메시지를 처리하지 않고 다른 스레드가 메시지를 보내는 경우 교착 상태가 발생할 수 있습니다.
예를 들어 스레드를 만든 다음 스레드가 초기화될 때까지 차단한다고 가정합니다. 스레드가 SendMessage 함수를 호출하여 창에 메시지를 보내면 교착 상태가 발생합니다. 메시지가 처리될 때까지 SendMessage가 반환되지 않기 때문입니다. WaitMsg를 호출하면 SendMessage 호출이 반환되어 교착 상태가 방지됩니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 |
|
라이브러리 |
|