- ベストアンサー
「インクルードファイル 'pthread.h' をオープンできない」というエラー
今簡単なサーバ・クライアントシステムをつくっていて、大まかな骨組みはできました。 で、骨組みができたところで先生が、「並列処理を可能にするため、スレッドを使ってみましょう。スレッドについては次回までに各自勉強してきておいてください。」といったので、帰ってからインターネットで調べてみた結果、マルチスレッドの例みたいなプログラムのソースをいくつか見付けました。 私はスレッドというものを全く知らなかったので(というかそもそもC言語についてもそれほど詳しくないのですが)、とりあえずそのソースをコピーしてどのような動作をするのか確認しようと思いました。 ところがコンパイルするときに、 「インクルードファイル 'pthread.h' をオープンできない」 というエラーがでてきてしまうのです。 ちなみに家で使っている CPad for Borland C++Compiler と、 学校で使っている Microsoft Visual C++ (だったかな?) の両方でコンパイルしてみましたが、両方とも同じエラーが起こります。 どうすればいいのでしょうか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
自信ないのですが pthread.hってUNIX系だと 思うのですが・・ windowsにはないと思います。 参考にされているWEBがUNIX/LINUXとかいてありませんでしたか? もしくはコンパイルに $cc XXXX $gcc XXX みたいになっていなっかたでしょうか? windows用は参考URLをどうぞ
その他の回答 (3)
- JaritenCat
- ベストアンサー率37% (122/322)
すいません質問をよく見てませんでした。 Windowsなら、process.hをインクルードして、_beginthreadや_endthreadを使うか、windows.hをインクルードして、CreateThreadやExitThreadを使います。
お礼
回答ありがとうございました。
- JaritenCat
- ベストアンサー率37% (122/322)
BCC++の場合、マルチスレッドのコンパイルは、-WM オプションが必要です。 CPadは使ったことがないのでよく分かりませんが、どこかのメニューで設定できるかもしれません。
- sha-girl
- ベストアンサー率52% (430/816)
pthread.hはUNIX系のスレッドで使います。 Windowsではスレッドを作る場合 CreateThreadや_beginthreadというAPIや関数を使います。 どうしてもそのソースをWindows上でコンパイルしたいなら cygwin(Windows上のUNIX環境)をインストールし gcc(C++コンパイラ)でコンパイルしてください。
お礼
回答ありがとうございました。
お礼
pthread.hってUNIX系なんですか・・・すいませんでした、知識不足で。 参考URLとっても役に立ちました。 ありがとうございました。