On 10/02/10 03:13, Ivica Ico Bukvic wrote: > Many thanks for the clarification Robin, really appreciate it! > > One more thing I realized, isn't the secondary thread effectively blocking > the lock on the main thread because the mutex_lock is placed before the cond > call or is this the right way to do it? Namely, should secondary thead have > the following structure: > > While loop { > mutex_lock > state cond <--this is where the thread supposedly waits (does this have > to be "while" loop or a simple if will do as is the case in my code?) > do something > mutex_unlock > } > Thread exit
This looks about right. You need to aquire the lock before calling pthread_cond_wait() which then release the lock, waits for the condition to be signaled and acquires the lock again. Read the first paragraph of `man 3 pthread_cond_wait` ..what could however happen is that pthread_cond_wait() returns with an error, without acquiring the lock! HTH, robin _______________________________________________ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev