CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。
Linux 上ではプロセスの起動コストが低いため、マルチプロセスのデザインが多いらしいですが、Windowsではプロセス起動はなるべく避けたいところです。マ ルチスレッドによる設計ができないと話になりません。動機は明確なので、さっそく本題に入ります。 まだざっとしか見ていませんが、Linux でのスレッディングについては "The Native POSIX Thread Library for Linux" (2003) などによれば、つい最近でもいろいろな問題点がある(あった)ようではありますが、これはまぁ、スレッドライブラリの呼び出し側の問題ではないのでここで は気にしないことにします。POSIX 標準のソースの互換性を保ちながら、カーネルがしっかりとサポートしてくれることを期待したいところです。ここでは POSIX pthread インターフェイスを使います。 スレッドの生成 同期
(2007.6.26 新規作成。2007.7.11 更新。) C言語でのpthreadの関数の使い方について簡単に解説します。C++だとboostとかを使ったほうがいいですが、内部でどのように動いているか見るためにprimitiveなライブラリを使います。 まず、わざとデッドロックさせてみます。ここまではすでにいろいろなサイトで解説されています。加えて、どうやってデッドロックを回避するか考えてみます。 以下は、Fedora 7 Linuxでテストしています。 題材 題材ですが、あまりにメジャーな「哲学者たちの食事」を用います。 哲学者たちの食事 問題を引用しておくと、 専ら考えることを生業とする5人の哲学者たちがひとつの丸い食卓に座っている。中央には大きな皿にスパゲッティが盛ってある。5つのフォークが哲学者たちの間に置いてある。また各哲学者の前には取り皿がおいてある。思考中腹がへったことに
書籍転載 文法からはじめるプログラミング言語Microsoft Visual C++入門 並列処理を行うための基礎知識(Visual C++) ――第13章 並列処理~マルチスレッドプログラミング(前編)―― WINGSプロジェクト 矢吹 太朗(監修 山田 祥寛) 2010/04/13 本コーナーは、日経BPソフトプレス発行の書籍『文法からはじめるプログラミング言語Microsoft Visual C++入門』の中から、特にInsider.NET読者に有用だと考えられる章や個所をInsider.NET編集部が選び、同社の許可を得て転載したものです。基本的に元の文章をそのまま転載していますが、レイアウト上の理由などで文章の記述を変更している部分(例:「上の図」など)や、図の位置などを本サイトのデザインに合わせている部分が若干ありますので、ご了承ください。『文法からはじめるプログラミング言語M
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く