Java では、スレッドには、新規、実行可能、実行中、ブロック済み、デッドという 5 つの異なる状態があります。それらの間の変換図は次のとおりです。
上の図には例外があり、yield() メソッドを呼び出すと、現在実行中のスレッドが準備完了状態に移行します。スレッドが終了したかどうかをテストしたい場合は、 isAlive() メソッドを使用できます。このメソッドは、スレッドが準備完了、実行中、またはブロックされている場合は true を返し、スレッドが作成されるか終了する場合は false を返します。 start() メソッドを呼び出して、停止したスレッドを再起動しようとしないでください。死は死を意味し、人間と同じように再生することはできません。また、例外が発生するため、スレッド上で start() メソッドを 2 回呼び出さないでください。