返回介绍

java.lang 枚举 Thread.State

发布于 2019-10-04 09:51:07 字数 4936 浏览 929 评论 0 收藏 0

java.lang.Object
  └java.lang.Enum<Thread.State>
      └java.lang.Thread.State
所有已实现的接口:
Serializable, Comparable<Thread.State>
正在封闭类:
Thread

public static enum Thread.State
extends Enum<Thread.State>
 

线程状态。线程可以处于下列状态之一:

  • NEW 至今尚未启动的线程处于这种状态。
  • RUNNABLE 正在 Java 虚拟机中执行的线程处于这种状态。
  • BLOCKED 受阻塞并等待某个监视器锁的线程处于这种状态。
  • WAITING 无限期地等待另一个线程来执行某一特定操作的线程处于这种状态。
  • TIMED_WAITING 等待另一个线程来执行取决于指定等待时间的操作的线程处于这种状态。
  • TERMINATED 已退出的线程处于这种状态。

在给定时间点上,一个线程只能处于一种状态。这些状态是虚拟机状态,它们并没有反映所有操作系统线程状态。

从以下版本开始:
1.5
另请参见:
Thread.getState()

枚举常量摘要
BLOCKED

受阻塞并且正在等待监视器锁的某一线程的线程状态。

NEW

至今尚未启动的线程的状态。

RUNNABLE

可运行线程的线程状态。

TERMINATED

已终止线程的线程状态。

TIMED_WAITING

具有指定等待时间的某一等待线程的线程状态。

WAITING

某一等待线程的线程状态。

方法摘要
staticThread.StatevalueOf(Stringname)

返回带有指定名称的该类型的枚举常量。

staticThread.State[]values()

按照声明该枚举类型的常量的顺序,返回 包含这些常量的数组。

从类 java.lang.Enum 继承的方法
clone, compareTo, equals, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
从类 java.lang.Object 继承的方法
finalize, getClass, notify, notifyAll, wait, wait, wait

枚举常量详细信息

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
具有指定等待时间的某一等待线程的线程状态。某一线程因为调用以下带有指定正等待时间的方法之一而处于定时等待状态:
  • Thread.sleep
  • 带有超时值的 Object.wait
  • 带有超时值的 Thread.join
  • LockSupport.parkNanos
  • LockSupport.parkUntil

TERMINATED

public static final Thread.State TERMINATED
已终止线程的线程状态。线程已经结束执行。

方法详细信息

values

public static final Thread.State[] values()
按照声明该枚举类型的常量的顺序,返回 包含这些常量的数组。该方法可用于迭代 常量,如下所示:
for(Thread.State c :Thread.State.values())
        System.out.println(c);
返回:
按照声明该枚举类型的常量的顺序,返回 包含这些常量的数组。

valueOf

public static Thread.State valueOf(Stringname)
返回带有指定名称的该类型的枚举常量。 字符串必须与用于声明该类型的枚举常量的 标识符完全匹配。(不允许有多余 的空格。)
参数:
指定要返回的枚举常量的名称。 -
返回:
返回带有指定名称的枚举常量
抛出:
如果该枚举类型没有带有指定名称的常量, - 则抛出 IllegalArgumentException

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文