java中线程有多少种状态
java线程的状态
马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。
新建 (new或born) : 马克-to-win: new出线程对象,还没start呢, 处于新建状态
就绪或说可运行(ready或runnable): 马克-to-win: 在start()之后,它将处于就绪状态或可运行状态,但cpu还没分配给它呢,所以还没真正运行呢。通过后面的学习可知:sleep(),join(),IO请求,同步锁释放等很多操作之后, 真正运行之前,都会回到这个状态。
运行 (Running) : 获取到了cpu,可以真正运行了, run()里的代码被运行。
阻塞 (Blocked) – 因为某种原因暂时停止运行。wait(),获取对象的同步锁之前,sleep(),join(),或者发出了I/O请求时。
死亡 (Dead) – 在run()方法已完成执行(或break,return,异常)或其 stop() 方法被调用之后(sun公司已不推荐使用,因为中断得太狠,容易引起同步问题),线程就处于死亡状态。