- java.lang.Object
-
- java.lang.Enum<Thread.State>
-
- java.lang.Thread.State
-
- All Implemented Interfaces:
-
Serializable
,Comparable<Thread.State>
- Enclosing class:
- Thread
public static enum Thread.State extends Enum<Thread.State>
线程状态。 线程可以处于以下状态之一:-
NEW
尚未启动的线程处于此状态。 -
RUNNABLE
在Java虚拟机中执行的线程处于此状态。 -
BLOCKED
被阻塞等待监视器锁定的线程处于此状态。 -
WAITING
正在等待另一个线程执行特定动作的线程处于此状态。 -
TIMED_WAITING
正在等待另一个线程执行动作达到指定等待时间的线程处于此状态。 -
TERMINATED
已退出的线程处于此状态。
一个线程可以在给定时间点处于一个状态。 这些状态是不反映任何操作系统线程状态的虚拟机状态。
- 从以下版本开始:
- 1.5
- 另请参见:
-
Thread.getState()
-
-
Enum Constant Summary
Enum Constants Enum Constant 描述 BLOCKED
一个线程的线程状态阻塞等待监视器锁定。NEW
线程尚未启动的线程状态。RUNNABLE
可运行线程的线程状态。TERMINATED
终止线程的线程状态。TIMED_WAITING
具有指定等待时间的等待线程的线程状态。WAITING
等待线程的线程状态
-
方法摘要
所有方法 静态方法 具体的方法 Modifier and Type 方法 描述 static Thread.State
valueOf(String name)
以指定的名称返回此类型的枚举常量。static Thread.State[]
values()
按照它们声明的顺序返回一个包含此枚举类型常量的数组。
-
-
-
Enum Constant Detail
-
NEW
public static final Thread.State NEW
线程尚未启动的线程状态。
-
RUNNABLE
public static final Thread.State RUNNABLE
可运行线程的线程状态。 可运行状态的线程正在Java虚拟机中执行,但它可能正在等待来自操作系统(例如处理器)的其他资源。
-
BLOCKED
public static final Thread.State BLOCKED
一个线程的线程状态阻塞等待监视器锁定。 处于阻塞状态的线程正在等待监视器锁定进入同步块/方法,或者在调用Object.wait
后重新输入同步的块/方法。
-
WAITING
public static final Thread.State WAITING
等待线程的线程状态 由于调用以下方法之一,线程处于等待状态:-
Object.wait
没有超时 -
Thread.join
没有超时 -
LockSupport.park
等待状态的线程正在等待另一个线程执行特定的动作。 例如,一个已调用线程
Object.wait()
的对象上正在等待另一个线程来调用Object.notify()
或Object.notifyAll()
该对象上。 一个调用Thread.join()
线程正在等待指定的线程终止。 -
-
TIMED_WAITING
public static final Thread.State TIMED_WAITING
具有指定等待时间的等待线程的线程状态。 线程处于定时等待状态,因为在指定的正等待时间内调用以下方法之一:
-
TERMINATED
public static final Thread.State TERMINATED
终止线程的线程状态。 线程已完成执行。
-
-
方法详细信息
-
values
public static Thread.State[] values()
按照它们声明的顺序返回一个包含此枚举类型常量的数组。 该方法可用于遍历常量如下:for (Thread.State c : Thread.State.values()) System.out.println(c);
- 结果
- 一个包含这个枚举类型的常量的数组,按照它们被声明的顺序
-
valueOf
public static Thread.State valueOf(String name)
以指定的名称返回此类型的枚举常量。 字符串必须完全匹配用于声明此类型的枚举常量的标识符。 (不允许使用外来空白字符。)- 参数
-
name
- 要返回的枚举常量的名称。 - 结果
- 具有指定名称的枚举常数
- 异常
-
IllegalArgumentException
- 如果此枚举类型没有指定名称的常量 -
NullPointerException
- 如果参数为null
-
-