私の関数では、新しいスレッドを作成するためmain()
に呼び出します。pthread_create
テキストファイルの名前を渡すと、スレッドがテキストファイルを開き、行数をカウントして、返された数値にmain()
整数を設定したところにその数値を返しますtotalCount +=
。
別のコードでテキストファイルの行数を数えたので、スレッド関数が正しく機能することを知っています。pthread_create
ループを使用して複数回呼び出すと、問題が発生します。1つのtotalCount
ファイルを数えることで得られるものは正確ですが、2つ以上のファイルを開くとtotalCount
、main()
入力が間違っています。
これを引き起こしている私のプログラムで何がうまくいかない可能性がありますか?スレッド機能に問題がありますか?私のpthread_join
?私はこの質問がコードなしではかなり曖昧かもしれないことを知っていますが、この説明を与えられた考えはまったくありませんか?