私はお互いにデータを渡し、それらを少し処理するいくつかのスレッドを得ました。最後の2つのスレッド間で同期をとると、プログラムがクラッシュし始めました。サイクルは、他のスレッドがちょうどpthread_cond_signalがクラッシュする可能性がありますか?
pthread_mutex_lock(&mutex);
pthread_cond_signal(&cond);
pthread_mutex_unlock(&mutex);
である同期部以外は同じまま私はちょうどそれだけで実行しているので、最後のスレッドの全体の内容をコメントしたスレッドので、代わりのデバッグで多くの経験を持っていません
と私はまた、クラッシュせずにアプリを作ったことをコメントした。
プログラムの残りの部分では、mutexや条件変数には何も依存しません。私がpthread_cond_signal(& cond);だけをコメントすれば、それも動作します。何が起こっているかについてのアイデア?
他のスレッドはwhile(1)のみ実行していますか?ループがあるのですか? – Akron
それはwhile(1)のみ – Pyjong