-title: Java Thread の作り方
--Thread の起動方法
Java Thread は、Thread をextends して起動する方法と、
Runnable Interface を持つオブジェクトを使う方法がある。
Class SimpleThread
をこの二つの方法で起動して見よ。
二つの方法の使い分け方を考察せよ。
--Thread Pool
Multi CPU システムでは、すべてのスレッドを同時に動かすよりも、
CPUの数にそったスレッドのみを active にする方が良い。
ThreadPool を使って、投入したThread のキューのうち、固定した
数のThread を起動してみよう。
Class SimpleThreadExecutor
三種類のThreadPool を使っているが、
pool = Executors.newFixedThreadPool(poolSize);
pool = Executors.newCachedThreadPool();
pool = new MyFixedExecutorService(poolSize);
これらの差はどこにあるか考察せよ。
最後のものは、Java PathFinder で実行するように簡易なExecutor を自分で作成してみた。この実装は適切か?
--Option 台数効果
ThreadPool を使って、画像処理およびNPハードな問題を解くプログラムを書き、台数効果(CPUを増やすごとに速度が向上すること)を確認せよ。