java并发编程学习之线程的生命周期(一)

流程图

新建状态

当用new创建一个线程后,线程就处于新建状态,此时和其他普通java对象一样,由JVM创建内存空间,初始化成员变量值等。

就绪状态

调用strat或者由阻塞状态被解除时,进入就绪状态,此时,只能表示线程可以运行了,但不代表已经运行了,需要等待CPU的调度。

运行状态

在就绪状态的线程,获取到调度后,就到了运行状态,但是不一定一直维持运行状态。

阻塞状态

包括sleep、wait,join,synchronized,I/O堵塞等,当前线程进入堵塞状态时,其他线程可以获得执行的机会。

死亡状态

当线程执行run结束、stop、setDeamon或者异常等,线程就会结束,进入死亡状态。

你可能感兴趣的:(java)