nanoJBlend

java.lang
クラス Thread

java.lang.Object
  上位を拡張 java.lang.Thread
すべての実装されたインタフェース:
Runnable

public class Thread
extends Object
implements Runnable

Thread はマルチスレッド実行環境で実行する一つのスレッドを表します。

Thread オブジェクトは以下の属性を持ちます。

スレッドを生成するには次の2種類の方法があります。

一旦スレッドが終了した後に再実行することはできません。 また、start を繰り返し呼び出して同一のスレッドを複数回開始することもできません。


コンストラクタの概要
Thread()
          Thread を生成します。
Thread(Runnable target)
          指定された Runnable を実行する Thread を生成します。
Thread(Runnable target, String name)
          指定された名称で、指定された Runnable を実行する Thread を生成します。
Thread(String name)
          指定された名称の Thread を生成します。
 
メソッドの概要
static Thread currentThread()
          現在実行中のスレッドへの参照を返します。
 String getName()
          このスレッドの名称を返します。
 void interrupt()
          このスレッドに割り込みをかけます。
 void join()
          このスレッドが終了するのを待ちます。
 void run()
          Thread クラスを拡張してスレッドを実装する場合、拡張したクラスでこのメソッドをオーバーライドして処理を実装します。
 void setName(String name)
          スレッドの名称を設定します。
static void sleep(long millis)
          現在実行中のスレッドを、指定された時間だけスリープさせます(一時的に実行を止めます)。
 void start()
          このスレッドの実行を開始させます。
static void yield()
          現在実行中のスレッドを一時停止させ、他のスレッドを実行させます。
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait
 

コンストラクタの詳細

Thread

public Thread()
Thread を生成します。

このコンストラクタの呼び出しは Thread(this, "Thread-" + n)nは整数値を表す文字列)の呼び出しと等価です。


Thread

public Thread(Runnable target)
指定された Runnable を実行する Thread を生成します。

このコンストラクタの呼び出しは Thread(target, "Thread-" + n)nは整数値を表す文字列)の呼び出しと等価です。

パラメータ:
target - スレッドで実行する run メソッドが実装されている Runnable オブジェクト。 このパラメータに null を指定した場合でも例外は発生しませんが、 そのオブジェクトを使用した場合の振る舞いは保証されません。

Thread

public Thread(Runnable target,
              String name)
指定された名称で、指定された Runnable を実行する Thread を生成します。

nano アプリケーションが Thread#start メソッドを呼び出すと、nanoJBlendは新たにスレッドを開始して、そのスレッドで target#run をよびだします。

パラメータ:
target - スレッドで実行する run メソッドが実装されている Runnable オブジェクト。 このパラメータに null を指定した場合でも例外は発生しませんが、 そのオブジェクトを使用した場合の振る舞いは保証されません。
name - スレッドの名称

Thread

public Thread(String name)
指定された名称の Thread を生成します。

このコンストラクタの呼び出しは Thread(this, name) の呼び出しと等価です。

パラメータ:
name - スレッドの名称
メソッドの詳細

currentThread

public static Thread currentThread()
現在実行中のスレッドへの参照を返します。

戻り値:
現在実行中のスレッドへの参照

getName

public final String getName()
このスレッドの名称を返します。

戻り値:
このスレッドの名称

interrupt

public void interrupt()
このスレッドに割り込みをかけます。

スレッドが Object クラスの wait() または wait(long) 、または Thread クラスの sleep(long)join() の呼び出しによってブロックされている状態でそのスレッドに対して interrupt メソッドが呼び出されると、スレッドをブロックしているメソッドは InterruptedException をスローします。


join

public final void join()
                throws InterruptedException
このスレッドが終了するのを待ちます。

例外:
InterruptedException - 他のスレッドがこのスレッドに割り込みをかけた場合。

run

public void run()
Thread クラスを拡張してスレッドを実装する場合、拡張したクラスでこのメソッドをオーバーライドして処理を実装します。 この場合、拡張したクラスのオブジェクトの start メソッドを呼び出すと、新たに生成されたスレッドで run メソッドが呼び出されます。

Runnable オブジェクトを指定して Thread オブジェクトを生成した場合、 start メソッドの呼び出しはこの run メソッドではなく、 Runnable オブジェクトの run メソッドの呼び出しを引き起こします。

アプリケーションが Thread クラスまたはそのサブクラスの run メソッドを直接呼び出すことは想定されていません。また、 Thread クラスの run メソッドの実装は何もしません。

定義:
インタフェース Runnable 内の run
関連項目:
start()

sleep

public static void sleep(long millis)
                  throws InterruptedException
現在実行中のスレッドを、指定された時間だけスリープさせます(一時的に実行を止めます)。 スリープしてもスレッドはモニターの所有権を保持しつづけます。

パラメータ:
millis - スレッドをスリープさせる時間(ミリ秒)。 0xFFFFFFFFL より大きな値は 0xFFFFFFFFL (約49日)に制限されます。
例外:
InterruptedException - 他のスレッドがこのスレッドに割り込みをかけた場合。

start

public void start()
このスレッドの実行を開始させます。 このメソッドの呼び出しにより、このメソッドを呼び出したスレッドの他に新たに別のスレッドが開始されることになります。

Runnable オブジェクトを指定して Thread オブジェクトを生成した場合、 start メソッドを呼び出すと、別スレッドが開始され、その中で Runnable オブジェクトの Runnable.run() メソッドが呼び出されます。 Runnable オブジェクトを指定して Thread オブジェクトを生成していない場合は、自オブジェクトの run() メソッドが呼び出されます。

同一の Thread オブジェクトについてスレッドを2回以上開始させることはできません。 スレッドがいったん実行を完了したあとでも再スタートすることはできません。

例外:
IllegalThreadStateException - 既にこのスレッドが開始されていた場合

yield

public static void yield()
現在実行中のスレッドを一時停止させ、他のスレッドを実行させます。


setName

public void setName(String name)
スレッドの名称を設定します。

パラメータ:
name - スレッドの名称 このパラメータに null を指定した場合の振る舞いは保証されません。

nanoJBlend

Copyright 2005-2013 Aplix and/or its affiliates. All rights reserved. Aplix Confidential and Restricted.
NTT DOCOMO and Hitachi Kokusai Electric Confidential