sleep和wait区别

之前没怎么深究,觉得差不多,不过看了weili的关于HttpClientConnectionManager的管理源代码之后,感觉略有不同,稍作记录,用自己的语言做一个记述;

sleep和wait都是释放cpu的资源,即原本拥有cpu的使用权,但是在调用之后就放弃执行了,不同之处在于sleep不会释放其他资源,如锁等,而wait会释放锁等其他获取的资源。从而导致sleep将自己放入就绪队列,而wait将自己放入了等待队列。而就绪队列中的线程得到cpu的资源就可立即执行,等待队列还需要得到运行所需的所有资源。

可参考:http://blog.csdn.net/wl455624651/article/details/7388250

原文地址:https://www.cnblogs.com/azul0906/p/4302294.html