欢迎光临
一个有态度、有温度的分享型博客

Java中线程方法sleep()和wait()的区别

区别:

  • sleep()是线程类(Thread)的方法,导致此线程暂停执行指定时间,把执行机会给其他线程,但是监控状态依然保持,超过指定时间后会自动恢复(线程回到就绪(ready)状态)。调用sleep()不会释放对象锁。

  • wait()是Object类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出notify方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入就绪状态。

参考文章:
1. http://www.cnblogs.com/DreamSea/archive/2012/01/16/2263844.html

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址