Método CAMMsgEvent.WaitMsg
[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.
El WaitMsg
método espera a que se señale el evento, mientras se envían mensajes enviados.
Sintaxis
BOOL WaitMsg(
DWORD dwTimeOut = INFINITE
);
Parámetros
-
dwTimeOut
-
Valor de tiempo de espera opcional, en milisegundos.
Valor devuelto
Devuelve TRUE si se señala el evento o FALSE si se ha agotado el tiempo de espera.
Observaciones
Este método llama a la función PeekMessage para procesar mensajes. Llame a este método en lugar de CAMEvent::Wait si el subproceso necesita procesar mensajes mientras espera un evento. Si el subproceso no procesa mensajes y otro subproceso envía un mensaje, se podría producir un interbloqueo.
Por ejemplo, supongamos que crea un subproceso y, a continuación, bloquea hasta que el subproceso se inicializa. Si el subproceso envía un mensaje a la ventana llamando a la función SendMessage, se producirá un interbloqueo. Esto se debe a que SendMessage no devuelve hasta que se haya procesado el mensaje. Llamar a WaitMsg permite que la llamada SendMessage devuelva, lo que impide el interbloqueo.
Requisitos
Requisito | Value |
---|---|
Encabezado |
|
Biblioteca |
|