java中线程的状态

发布时间 2023-05-31 08:41:40作者: 久念0109

一:从操作系统上说可以分为 5种

  1.  新建:线程被创建出来时
  2. 就绪:此时cpu拥有可执行权,但是未被真正执行
  3. 运行中:线程正在执行
  4. 等待:被阻塞了(sleep wait方法等)
  5. 结束:整个线程结束

二:从java源码中分为 6种状态

从Thread源码中我们可以看到一个枚举类 :JAVA给出了以下6种状态

  1. NEW   新建状态 
  2. RUNABLE   就绪和运行合并在一块的
  3. BLOCKED   获取到了锁被syn/lock修饰的代码块
  4.  WATTING 等待状态(需要被手动唤醒 wait)
  5. TIME_WATTING 等待状态 如sleep自动释放
  6. TERMINATED  结束状态