java线程进入阻塞的条件

什么是阻塞?线程可以运行,可是某个条件阻止它的运行,进入阻塞状态的线程调度器不会给他分配CPU时间片,直到他再次进入就绪状态的时候才能够。线程

1.等待输入或者输出完成对象

2.线程自身调用了waitget

3.线程自身调用了sleep同步

4.任务在调用了某个对象上的同步方法,可是锁被其余任务获取了。博客

其实总结起来就是一个是本身把本身打晕,另外一个是别人把本身打晕。对于自残的这种就是一个调用wait,一个调用sleep,他们的区别是调用sleep不会让出cpu的时间片,而调用wait会让出cpu时间片。it

后者则是,等待外界的输入或者输出到外界的完成,或者是友军不给力,没有把锁给让出来。方法

个人我的博客总结

相关文章
相关标签/搜索