スレッドを使用すると1つのプログラムで、複数の処理を同時に行うことが出来ます。
Javaでスレッドを実装するには、「java.lang.Thread」のクラスを継承する方法と
「Runnableインターフェース」を実装する方法があります。
スレッドとは?
1つのプログラムで複数の処理を実行する事を、スレッド処理と呼びます。
(マルチスレッドプログラムなどと呼ばれることもあります。)
たとえばゲームなどでは、「キーの入力処理」、「敵の動きなどの処理」、「プレイ時間の測定」などなど多くのスレッドが並列して処理を実行しています。
Runnableインターフェースを使用したときの例
以下の例では「Runnableインターフェース」を使用した場合の例を紹介しています。
public class Thtest implements Runnable{ public static void main(String[] args) { //Thtestクラス(クラス名[Thtest]の場合)をインスタンス化 Thtest t = new Thtest(); //Threadクラスをインスタンス化 Thread th = new Thread(t); th.start(); //実行 for(int a=0;a<=10;a++){ System.out.println("スレッド1:"+a); } } public void run(){ for(int b=0;b<=10;b++){ System.out.println("スレッド2:"+b); } } }
実行結果は機種やタイミングにより違う場合があります。
実行結果
スレッド2:0 ←スレッド2 スレッド1:0 ←スレッド1 スレッド1:1 スレッド1:2 スレッド1:3 スレッド1:4 スレッド1:5 スレッド1:6 スレッド1:7 スレッド1:8 スレッド2:1 スレッド2:2 スレッド2:3 スレッド2:4 スレッド2:5 スレッド2:6 スレッド1:9 スレッド1:10 スレッド2:7 スレッド2:8 スレッド2:9 スレッド2:10Copy