黑马程序员技术交流社区

标题: sleep方法与wait方法之间的区别 [打印本页]

作者: 王立浩    时间: 2013-2-2 23:03
标题: sleep方法与wait方法之间的区别
Thread.sleep方法使当前线程在指定的时间内处于“非运行”状态。线程一直持有对象的监视器。而且若如果另一线程调用了 interrupt ()方法,它将唤醒那个“睡眠的”线程。
object.wait ()方法使当前线程出于“不可运行”状态,和 sleep ()不同的是 wait 是 object 的方法而不是 thread。调用 object.wait ()时,线程先要获取这个对象的对象锁,当前线程必须在锁对象保持同步,把当前线程添加到等待队列中,随后另一线程可以同步同一个对象锁来调用 object.notify (),这样将唤醒原来等待中的线程,然后释放该锁。基本上 wait ()/notify ()与 sleep ()/interrupt ()类似,只是前者需要获取对象锁。

老是混掉。。。这次一定要记住







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2