pスレッドについて教えてください。


関係性のない処理を行う2つのスレッドA、Bを同時に動かし始めたいのですが、

・スレッドAの待ち状態にpthread_cond_wait(&cond, &mutex1);

・スレッドBの待ち状態にpthread_cond_wait(&cond, &mutex2);

として(condは同じで、mutexが異なる)、これらを動かし始めるために別スレッドで

pthread_cond_broadcast(&cond);

をコールしたのですが、思ったとおりに動いてくれません。
なにがいけないのでしょう?
(pthread_cond_wait()の使い方を間違えている?)