Java中的sleep()和wait()

来源:互联网 发布:万网网络空间购买 编辑:程序博客网 时间:2024/06/14 22:09

最近在看Java线程相关的知识,故对Java中的sleep()和wait()这两个方法做一个笔记,以供自己查阅。

sleep()方法是Thread类的方法,wait()方法是Object类中的方法。
sleep()方法是Thread中的一个静态方法。它可以使当前的线程在特定的时间内进入“非运行”状态。在此期间,该线程保持它所持有的锁。
wait()方法是一个在Object类里的方法。它可以使当前的线程进入“非运行”状态。Wait在一个对象上被调用,而不是在线程上被调用。在调用wait()方法之前,对象应该是同步的,意味着对象应该在同步块里。线程对wait()的调用释放了锁。
sleep(milliseconds)自动醒过来,只能调用interreput()来强行打断;wait()可以用notify()直接唤起。
上面是我查阅资料后记的笔记,完整的描述在后面的链接里可以看见。

参考:1.http://www.java2novice.com/java_interview_questions/wait-sleep-difference/
2.https://www.zhihu.com/question/23328075
3.http://blog.csdn.net/liuzhenwen/article/details/4202967(赞)

1 0
原创粉丝点击