前面的章节我们学习了如何创建一个线程,在这章节中我们将详细介绍一下线程的各个状态。
首先我们来看一个图。
1.线程的第一个状态就是新建,当我们执行一个线程的start()方法之后,它就进入了一个就绪的状态。
2.就绪状态。该状态表示线程处于可运行状态但并没有执行,只有当cpu对它进行调度的时候它才会进行真正的运行状态。
3.运行状态。
4.冻结状态。当运行中的线程执行了sleep或者wait方法之后就会进入冻结状态(sleep进入的等到睡眠的时间到了又会进入可运行状态。而wait则必须等待notify将它唤醒才能重新进入可运行状态)。
5.线程的死亡状态。run方法运行结束。
6.线程的挂起,线程运行suspend方法(已经过时了,不推荐使用),强制结束线程stop方法(已经过时了,不推荐使用)