目次> 第17章 TOPUPPREVNEXT

第17章 マルチスレッド

【目次】
  1. スレッド
  2. Thread クラス
  3. Runnable インターフェース
  4. Runnable の例(その1)− 点滅
  5. Runnable の例(その2)− ズーム
  6. Runnable の例(その3)− 衛星
  7. Runnable の例(その4)− ボール
  8. Runnable の例(その5)− 衝突
【テーマ】
ひとつのプログラムのなかで、複数の作業を同時に並行して実行する仕組みを マルチスレッドといいます。
Windows自体がマルチスレッドですから、 簡単なプログラムでは自分のプログラム自体を マルチスレッドにする必要はあまりありません。 たとえば、自分のプログラムが永久ループを始めて止まらなくなっても、 DOS画面にもどって CTRL+C を押せば、 プログラムを止めることが出来ます。
Java言語では、マルチスレッドを簡単にプログラムすることができます。
単純なプログラムでは、マルチスレッドのありがたみが理解しにくいのですが、 アニメーションや、探索問題など計算時間(コンピュータの処理時間)が長い プログラムでは、同時並行処理が必要になります。

ここではアニメーションを例題として、 Javaのマルチスレッド機能の概略を紹介します。

17章のまとめ

【まとめ】

アニメーションを動かしながら、ボタンがクリックされた処理をするといった 「 並行処理 」 をする仕組みを 「 マルチスレッド 」 といいます。
マルチスレッドにするには、

のいずれかの方法をとります。いずれの場合も、run メソッドを定義したクラスのインスタンスを生成し、 start メソッドを呼び出すと、 run メソッドが並行して走り始めます。

run メソッドや start メソッドにはパラメタを指定できません。 必要ならば、インスタンス変数にし、コンストラクタのパラメタを介して設定します。


更新日:2004-11-08