[alsa-devel] snd_mixer handle in two threads

Sebastian H. vand2 at gmx.de
Wed Jun 9 15:05:33 CEST 2010

Hello again

This is still about the alsamixer-qt4 application I working on.

This time I wonder if a snd_mixer_t handle created with
snd_mixer_open ( ... ) can be used in two threads concurrently.

One thread should be the main Qt4 GUI thread and the second thread
should only poll ( ... ) blocking for ALSA events on the shared
snd_mixer_t handle in accompany with

  snd_mixer_poll_descriptors_count ( ... )
  snd_mixer_poll_descriptors ( ... )
  snd_mixer_poll_descriptors_revents ( ... )

The second thread then will post Qt4 signals to the main thread
on occassion.

Does this sound feasible?

This approach seems neccessary as I want to avoid timed polls and any
integration of linux poll() in the Qt4 mail loop seems to boil down to
timed polls.

Sebastian H.

More information about the Alsa-devel mailing list