4.5.1 スレッドの状態の種類

Java仮想マシンで同時に実行される個々のタスクは、スレッドです。スレッドの主要な状態には、RUNNING、RUNNABLEおよびBLOCKEDがあります。

  • RUNNINGスレッドは、現在実行中のスレッドです。
  • RUNNABLEスレッドは、現在のスレッドがCPUの制御を放棄すると実行可能になります。RUNNABLE状態のスレッドは多数存在できますが、RUNNING状態のスレッドは1つしか存在できません。スレッドを実行するということは、スレッドの状態をRUNNABLEからRUNNINGに変更し、そのスレッドがJava仮想マシン(VM)を制御するようになることを意味します。
  • BLOCKEDスレッドは、イベントまたはリソースが使用可能になるのを待機しているスレッドです。

ノート:

Java仮想マシン(VM)は、優先度が同じスレッドがラウンドロビン・モードで実行されるようスケジュールします。