线程的运行状态
1.要得到本题答案,根据下面简图(阉割版)就可以获得
拓展补充
2.Java线程的各个状态间的关系流程-简图
3.Java线程的各个状态间的关系流程-完整信息图
4.wait()、sleep()、yield()的理解
1)wait()是Object的实例方法,在synchronized同步环境使用,作用当前对象,会释放对象锁,需要被唤醒。
2)sleep()是Thread的静态方法,不用在同步环境使用,作用当前线程,不释放锁。
3)yield()是Thread的静态方法,作用当前线程,释放当前线程持有的CPU资源,将CPU让给优先级不低于自己的线程用,调用后进入就绪状态。
知识的搬运工:其他大佬的见解,推荐链接