それぞれのスレッドが各々でファイルを書かなきゃいけない理由がなんかあるんかな?
そうじゃないならそれぞれの計算結果を親スレッドが受け取って
親スレッドがまとめて書き込めばいいんじゃないかなぁ