11.Java中线程有哪些状态?
Java线程在运行的生命周期中有下面6钟状态中的一种
1.NEW
初始状态,线程被创建,但没有被调用
线程创建后处于NEW状态,调用start()方法后开始运行,此时处于READY状态,当获得CPU时间片后就处于RUNNING状态
2.RUNNABLE
运行状态,JAVA线程将操作系统的就绪和运行统称为运行中
3.BLOCKED
阻塞状态,通过加锁的机制,将该线程阻塞,常用于解决线程不安全问题
4.WAITING
等待状态,表示当前线程需要等待其它线程做一些通知或中断操作
5.TIME_WAITING
超时等待状态,可以设置超时时间,超过这个时间,可以自行返回
,比如通过sleep方法将Java线程置于TIME WAITING状态,当超时时间到达后返回到RUNANBLE状态
6.TERMINATED
终止状态,表示当前线程执行完毕