java之waite()和sleep()方法的区别
sleep(Long time),线程休眠一定时间后自动恢复运行;
waite(Long timeout),线程等待,如果没有唤醒,则在一定时间后自动唤醒。
那这两个可不可以等同呢?都是指线程暂停一定时间。
不
sleep方法在同步方法内是不会释放锁的,因此,休眠时间到了它会继续运行当前同步方法;
waite方法会释放锁,等待时间内没有唤醒则会自动唤醒,唤醒后此线程会置就绪状态,而不是立即运行。
可以说,waite方法是一种强制的线程让步,只是它需要一定条件来唤醒(主动唤醒与计时器唤醒)。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
