论坛首页 Java企业应用论坛

关于多线程的wait与sleep的区别

浏览 3544 次
该帖已经被评为隐藏帖
作者 正文
   发表时间:2009-06-24   最后修改:2009-06-24
OO
在多线程编程中,经常会使用sleep与wait操作,我们理解sleep与wait的最大区别是sleep等待是不会释放当前锁,而wait则反之。我今天想到一个现实例子来比较这两者的区别。
  我以去火车站买票的例子来说明。我们去火车站买票,当站到售票窗口前要告诉售票员需要到哪里的票,什么时候发车的,售票员就通过电脑去给我们打印票,这个时候我们就得等待。如果我们用sleep模式,就得一直站在那里等,直到售票员给我们票;如果用wait模式,这个时候就离开我们所站的位置,后面的票友就可能站到我当前的位置(窗口前),我们要取票的话,就得重新排在队伍后面去取票。

  这是我今天想到的一个例子来帮助大家理解,欢迎大家拍砖!








美丽健康网http://www.meilijiankang.com
   发表时间:2009-06-26  
有道理,sleep是大家一起等,wait是一个人等,呵呵
0 请登录后投票
   发表时间:2009-06-26  
这么比喻,明了多了,如果很细心呀。。
0 请登录后投票
   发表时间:2009-06-27  
嗯 ,比喻的很好!比看那个技术文档要好理解多了!
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics