线程的状态
Java线程在运行过程中可能会有以下6种状态
New:新创建状态。线程被创建,还没有调用start方法,在线程运行之前还有一些基础工作要做
Runnable:可运行状态。一旦调用start方法,线程就处于Runnable方法。一个可运行的线程可能正在运行也可能没有运行,这取决于操作系统给线程提供的运行的时间。
Blocked:阻塞状态。表是线程被锁阻塞,它暂时不活动。
Waiting:等待状态。线程暂时不活动,并且不运行任何代码,消耗最少的资源,知道线程调度器重新激活它
Timed waiting:超时等待状态。和等待状态不同的是,它是可以在指定的时间自行返回的。
Terminated:超时等待状态。表示当前线程已经执行完毕。导致线程终止有两种情况,第一种是run方法执行完毕后正常退出;第二种就是因为一个没有捕获的异常二终止了run方法,导致线程进入终止状态。
网友评论