千家信息网

JAVA线程一共有几种状态

发表于:2025-02-05 作者:千家信息网编辑
千家信息网最后更新 2025年02月05日,这篇文章主要介绍"JAVA线程一共有几种状态",在日常操作中,相信很多人在JAVA线程一共有几种状态问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"JAVA线程一共有几种
千家信息网最后更新 2025年02月05日JAVA线程一共有几种状态

这篇文章主要介绍"JAVA线程一共有几种状态",在日常操作中,相信很多人在JAVA线程一共有几种状态问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"JAVA线程一共有几种状态"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

线程的状态,在你*度的过程中,你会发现,答案有5种,6种,甚至还有7种的,那么究竟有几种状态?

在编译器JDK1.5以后的环境下,打开Thread进入源码看看:

 * A thread state.  A thread can be in one of the following states:     * 一个线程,有以下几种状态     * 
    *
  • {@link #NEW}
    * ①未启动的线程状态 new * A thread that has not yet started is in this state. *
  • *
  • {@link #RUNNABLE}
    * ②在jvm中执行的线程状态 runnable * A thread executing in the Java virtual machine is in this state. *
  • *
  • {@link #BLOCKED}
    * ③一个线程被阻塞,等待监控锁的线程状态 blocked * A thread that is blocked waiting for a monitor lock * is in this state. *
  • *
  • {@link #WAITING}
    * ④一个线程 为了永久等待另一个线程特定的操作的线程状态 waiting * 翻译后通顺点:无限等待另一个线程的线程执行特定的操作处于此状态 * A thread that is waiting indefinitely for another thread to * perform a particular action is in this state. *
  • *
  • {@link #TIMED_WAITING}
    * ⑤ 一个线程 等待另一个线程执行特定的操作的等待时间内的线程状态 timed_waiting * 正在等待另一个线程执行某个操作的线程在指定的等待时间内处于这种状态 * A thread that is waiting for another thread to perform an action * for up to a specified waiting time is in this state. *
  • *
  • {@link #TERMINATED}
    * ⑥一个线程已经被退出的状态 终止 terminated * A thread that has exited is in this state. *
  • *
* *

* 在给定的时间点上,线程只能处于一种状态。这些状态是虚拟机状态,不反映任何操作系统线程状态 * A thread can be in only one state at a given point in time. * These states are virtual machine states which do not reflect * any operating system thread states. * * @since 1.5 * @see #getState */```

插入源码

public enum State {        /**         * Thread state for a thread which has not yet started.         */        NEW,
/** * Thread state for a runnable thread. A thread in the runnable * state is executing in the Java virtual machine but it may * be waiting for other resources from the operating system * such as processor. */ RUNNABLE,
/** * Thread state for a thread blocked waiting for a monitor lock. * A thread in the blocked state is waiting for a monitor lock * to enter a synchronized block/method or * reenter a synchronized block/method after calling * {@link Object#wait() Object.wait}. */ BLOCKED,
/** * Thread state for a waiting thread. * A thread is in the waiting state due to calling one of the * following methods: *
    *
  • {@link Object#wait() Object.wait} with no timeout
  • *
  • {@link #join() Thread.join} with no timeout
  • *
  • {@link LockSupport#park() LockSupport.park}
  • *
* *

A thread in the waiting state is waiting for another thread to * perform a particular action. * * For example, a thread that has called Object.wait() * on an object is waiting for another thread to call * Object.notify() or Object.notifyAll() on * that object. A thread that has called Thread.join() * is waiting for a specified thread to terminate. */ WAITING,
/** * Thread state for a waiting thread with a specified waiting time. * A thread is in the timed waiting state due to calling one of * the following methods with a specified positive waiting time: *

    *
  • {@link #sleep Thread.sleep}
  • *
  • {@link Object#wait(long) Object.wait} with timeout
  • *
  • {@link #join(long) Thread.join} with timeout
  • *
  • {@link LockSupport#parkNanos LockSupport.parkNanos}
  • *
  • {@link LockSupport#parkUntil LockSupport.parkUntil}
  • *
*/ TIMED_WAITING,
/** * Thread state for a terminated thread. * The thread has completed execution. */ TERMINATED; }```

到此,关于"JAVA线程一共有几种状态"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

线程 状态 学习 时间 更多 源码 帮助 实用 通顺 接下来 操作系统 文章 方法 正在 环境 理论 知识 答案 篇文章 系统 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全重大操作题库 网络技术基础计算机网络的目标 影响网络安全的技术因素是 数据库终端查看表指令 整合营销和数据库营销 河南商务外贸软件开发公司 数据库怎么传到文档 大数据开发是软件开发吗 数据库电器管理系统免费论文 查询数据库有哪些用户 维普和知网三大数据库的区别 网络技术使用的重要性 服务器阵列硬盘坏掉二个怎么办 互联网科技人 广东医联互联网科技有限公司 宿迁大型网络技术参考价格 网络安全监理员 软件开发工程师岗位市场需求 包头市纪委监委网络技术服务中心 河南品质软件开发应用 云服务器是默认子网吗 安卓网络验证服务器修改 易租星互联网科技有限公司 网络技术对学习方式的影响 为什么网络安全是管理问题 水桶服务器mod 海康威视的网络技术有限公司 闵行区会计软件开发代理价格 网络安全模式能玩cf吗 科技创新是互联网的核心
0