標準プログラマーズ ライブラリシリーズJava スレッド完全制覇
2002年6月10日紙版発売
村上列 著
B5変形判/208ページ
定価2,398円(本体2,180円+税10%)
ISBN 4-7741-1491-X
ただいま弊社在庫はございません。
書籍の概要
この本の概要
Javaプログラマを名乗るなら,スレッドプログラミングの知識は必須です。本書では「スレッドとは何か」にはじまり,スレッドの生成/実行/停止/同期などといったスレッド操作の基本を,他の入門書にはない切り口で丁寧に解説します。
こんな方におすすめ
- Javaのスレッドやマルチスレッドについて集中的に理解したい方
目次
Chapter 1 スレッドプログラミングへの序章
- 1.1 Javaの概要
- 1.1.1 Javaの登場とその特徴
- 1.1.1 Javaとスレッド〜避けて通れない関門?
- 1.2 マルチスレッドとは
- 1.2.1 シングルスレッド
- 1.2.2 マルチスレッド〜2つ以上の制御の流れをコントロール
- 1.2.3 マルチスレッドは難しくない!?
- 1.3 マルチプロセス/マルチタスクとマルチスレッドの違い
- 1.4 マルチスレッドを使う理由
- 1.4.1 使わなければならない理由
- 1.4.2 使った方がよい理由
- 第1章のまとめ
Chapter 2 スレッドの基本操作
- 2.1 スレッドの生成方法
- 2.1.1 Threadクラスを継承する方法
- 2.1.2 Runnableインターフェースを継承する方法
- 2.1.3 どちらの方法を使うべきか?
- 2.1.4 アプレットでの例
- 2.2 スレッドの停止
- 2.2.1 スレッドの状態取得
- 2.2.2 スレッドの停止を待つ
- 2.2.3 スレッドを停止するには
- 2.3 プログラムの終了条件
- 第2章のまとめ
Chapter 3 スレッドの同期
- 3.1 非同期な実行が引き起こす問題
- 3.1.1 エラーになる場合
- 3.1.2 おかしな現象を引き起こす場合
- 3.2 スレッドの同期
- 3.2.1 synchronizedメソッド
- 3.2.2 synchronizedブロック
- 3.3 同期化についての注意点
- 3.3.1 ロックは書き込み禁止スイッチではない
- 3.3.2 ロックはオブジェクトに対して行われる
- 3.3.3 デッドロック
- 第3章のまとめ
Chapter 4 待機/通知/割り込み
- 4.1 待機と通知
- 4.1.1 バッファサイズを表示するプログラム
- 4.1.2 バッファサイズが変わったときのみ表示を行うようにする
- 4.1.3 Thread.sleep( )によりCPUにやさしいプログラムにする
- 4.1.4 待機と通知
- 4.1.5 ロックについて
- 4.1.6 suspend( )/resume( )の代用
- 4.2 割り込み
- 4.2.1 interrupt( )
- 4.2.2 interrupted( )とisInterrupt( )
- 第4章のまとめ
Chapter 5 ThreadGroupとThreadLocal
- 5.1 ThreadGroupクラス
- 5.1.1 スレッドグループの基本操作
- 5.1.2 スレッド/スレッドグループの削除
- 5.1.3 デーモンスレッドグループ
- 5.1.4 スレッドとスレッドグループの取得
- 5.1.5 スレッドグループの親子関係
- 5.1.6 interrupt( )のオーバーライド
- 5.1.7 list( )メソッド
- 5.2 ThreadLocalクラス
- 5.2.1 ThreadLocalの基本操作
- 5.2.2 initialValue( )のオーバーライド
- 5.2.3 InheritableThreadLocalクラス
- 第5章のまとめ
Chapter 6 スレッドのスケジューリングと優先度
- 6.1 スケジューリングと優先度
- 6.1.1 CPUとスレッドの数
- 6.1.2 優先度の変更
- 6.2 スケジューリングのアルゴリズム
- 6.2.1 優先度と実行されるスレッド
- 6.2.2 CPU解放の重要性
- 第6章のまとめ
Chapter 7 スレッドプログラミングの例
- 7.1 チャットシステムの概要
- 7.1.1 チャットシステムの構成
- 7.2 チャットクライアント
- 7.2.1 チャットクライアントの概要
- 7.2.2 チャットクライアントのクラス構成
- 7.2.3 ClientReaderクラス
- 7.2.4 ClientWriterクラス
- 7.2.5 ClientReaderWriterクラス
- 7.2.6 ChatClientクラス
- 7.3 チャットサーバ
- 7.3.1 チャットサーバの概要
- 7.3.2 チャットサーバのクラス構成
- 7.3.3 ClientManagerReader/ClientManagerWirterクラス
- 7.3.4 ClientManagerクラス
- 7.3.5 ClientAccepterクラス
- 7.3.6 ChatServerクラス
- 7.4 チャットシステムを実行してみる〜テストと課題
- 第7章の課題
Appendix TimerクラスとTimerTaskクラス
- App.1 HelloAppletアプレットをTimer/TimerTaskクラスを使うように変更
- App.2 複数のタイマー処理の登録
- App.3 遅延時の挙動
- さくいん
この本に関連する書籍
-
Java グラフィクス完全制覇
Java APIだけでグラフィクスを作成しようとすると,ソースコードは恐ろしく長大になります。本書ではコンパクトなプログラムを実現するオリジナルクラスライブラリの活...