At Fri, 15 May 2009 16:28:06 +0200 (CEST), Marek Peca wrote:
This explains the problems I encountered. I missed the information, that these functions are not meant to be thread-safe.
Although it's not recommended, the behavior you described sounds strange. Could you check whether this still happens with the very latest alsa-lib version?
Yes, we will try to, but I need some cooperation with colleague, so it will take some time.
Also I guess this depends on the plugin to be used, e.g. dmix or not.
I see. Please, can you tell me, whether I should rewrite my program to purely single-thread acces to snd_pcm_write & snd_pcm_drop, or should I expect, that in ALSA (with proper plugin) it should work in correct releases?
A safer option is the single thread access if you want your app to support many different systems including old ALSA. In addition, you could add a different approach depending on the version, e.g. by checking in configure script.
Anyway, checking with the latest version is helpful for us ;)
thanks,
Takashi