マルチスレッドプログラミング相談室 その6at TECHマルチスレッドプログラミング相談室 その6 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト550:549【言語】【実行環境】【その他突起する事項】 08/02/17 15:18:17 環境を書き忘れていました。 【OS】debian/etch 【言語】C(pthread/posix) 【実行環境】 glibc2.3.6 gcc4.1.2 kernel 2.6.18-6-486 libpthread NPTL2.3.6 551:デフォルトの名無しさん 08/02/17 15:21:59 突起フイタ 552:デフォルトの名無しさん 08/02/17 15:50:00 >主系スレッドZでは、子スレッドa, b, cが終了するのを待つために、 >pthread_join()を使っています。しかし、子スレッドa, b, cがsleep()で待機しているときを、子スレッドが終了した時と勘違いしているようです。 コード晒してみてくれ 553:549 08/02/17 16:23:25 どうやら勘違いだったようです。 真の原因は、Zでログファイル用に fp_glb=fopen("Z.log","w"); として、fpを持っているのですが、子スレッドが、 fprintf(fp_glb, "log write thread name [a]\n"); として、共通のログファイルに書き込みを行おうすると、死んでいるようでした。子スレッドでは、書き込む前に排他ロックを行っているのですが、主系スレッドでは行っていないことが原因だと思っています。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch