pthread_cond_signal() または pthread_cond_broadcast() を呼び出すとき、スレッドが条件変数に関連する相互排他ロックを保持していないと「呼び起こし忘れ」(lost wake-up) という問題が生じることがあります。
「呼び起こし忘れ」 (lost wake-up) は次の場合に発生します。
スレッドが pthread_cond_signal() または pthread_cond_broadcast() を呼び出す。
さらに、待機しているスレッドが存在しない。
シグナルは無効になり、失われます。