并发之线程状态


线程可以有6种状态:

  1. New(新创建)
    当用new创建一个线程时,此时为new状态。
  2. Runnable(可运行)
    新建的线程调用start()方法之后,线程变为可运行状态,可运行状态的线程可能在运行也可能没运行,这取决于操作系统给线程提供运行的时间。
  3. 被阻塞(Blocked)
    当线程准备运行的时候,发现请求的内部对象锁被其他线程持有,线程将进入阻塞状态。只有当其他线程释放该锁,且线程调度器允许本线程持有它的时候,线程将转变为非阻塞状态。
  4. 等待(Waiting)
    当线程等待另一个线程通知线程调度器一个条件时,他自己进入等待状态。
  5. 计时等待(Timed waiting)
    调用带超时参数方法的线程将进入计时等待。此状态一直持续到超时或者接收到适当的通知。
  6. 终止(Terminated)
    run方法正常退出而死亡;
    因为一个未捕获的异常终止当前的run方法意外死亡;
    可以调用stop方法杀死线程,此方法不安全,已标注为Deprecated,不建议使用。

你可能感兴趣的:(并发之线程状态)