【JavaEE】Java多线程状态-- 多线程篇(10)

发布时间:2024年01月07日

1. 线程一共有几个状态?

  • 在 Java 中, 线程的状态主要有新建, 就绪, 运行, 阻塞, 等待和超时等待;

2. 每种状态表示的含义 & 状态之间的切换条件

  • 首先处于新建状态, 当线程调用 start() 方法后, 线程会进入就绪状态, 等待 CPU 分配资源运行。
  • 当 CPU 分配资源给线程后,线程会进入运行状态。
  • 如果线程在运行过程因为某些原因阻塞,比如等待 I/O 操作完成, 它会将进入阻塞状态. 阻塞的线程会等待直到 i/o 操作完成, 或者被其他线程唤醒;
  • 当线程调用了 wait() 方法, 它会将进入等待状态, 等待其他线程发送信号唤醒它;
  • 如果线程运行超时, 它将进入超时等待状态;
  • 例如,一个阻塞的线程在等待I/O操作完成之后,会从阻塞状态转换为可运行状态。
文章来源:https://blog.csdn.net/zxj20041003/article/details/135433198
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。