- Amazon.co.jp ・本 (305ページ)
- / ISBN・EAN: 9784900900660
作品紹介・あらすじ
本書は、Pthreadsライブラリの使い方、スレッドプログラミングの設計手法、デバックなどを、銀行のATMを例にとったコードを使って説明していく。
感想・レビュー・書評
-
古い本だが、pthreadは枯れている内容が多いので、充分に有用。
詳細をみるコメント0件をすべて表示 -
pthreadを使ったプログラミングについて、丁寧に説明されています。
例題も多く、初めてスレッド制御を学ぶ人も、より深く理解したい人も満足できると思います。
特に、スレッド制御で必要となるスレッド間の同期、キャンセル、スレッドプールについての説明が役に立ちました。 -
ほぼ必修
日本語でのスレッド解説を他に知らない -
マルチスレッド・プログラミングの規準であるpthread (POSIX thread)の基礎。割と古い本だな、と思いつつ類書が無いので読み始めたのだけど、結局必要なことはこの本で尽きているのかも知れない。示唆に富む多くの内容が含まれている。C++関連の情報が無いのは困るところだが。
Pthreadによって、スレッドの生成、同期などを制御できる。共有メモリの並列化にはOpenMPが便利だが、スレッドの挙動を直接細かく制御できるという点で、Pthreadsにも魅力がある。その分、コードの書き換えは複雑になり、スレッド間の同期など、考慮すべきことも増える。しかしパフォーマンス、並列化の柔軟性の点でメリットも大きい。
スレッド起動のオーバーヘッドを避ける方法がないかと思っていたところ、本書に載っているスレッドプールの手法を見て得心した。実装にも応用できる多くのコードがあって便利。ATPサーバを例題として、基礎的な使い方、高速化、デバッグまで解説している。Pthreadの実装についても記述があって、OSの制御との関係などが議論されている。 -
マルチスレッド、マルチプロセス周りの知識を習得できる。
メモリの状態が、複数スレッドのときと、複数プロセスのときでどのように違うか。プロセスをforkするとき、メモリでは何がどうコピーされるのか。など、それらを知らない人にとっては勉強になる点が多い。
また、そもそも、なぜマルチスレッドにするのか?
マルチコアプロセッサでなく、シングルコアプロセッサであっても、マルチスレッドによってパフォーマンスが向上する場合がある。これは、意外とはっきり認識を持っていなかった気がする。IO待ちにより、実行がブロックされるとはどういうことか。など、知る点が多い本だった。 -
師匠が持っていたので迷わず購入。
職場でリファレンスとして使用中。