sleep方法和wait方法的区别

以下内容整理自互联网,仅用于个人学习


  • sleep()继承自Thread类;wait()继承自Object类。

  • sleep()方法没有释放锁,而wait()方法释放了锁,使得其他线程可以使用同步控制块或者方法。

  • wait(),notify()和notifyAll()只能在同步控制方法或者同步控制块里面使用,而sleep()可以在任何地方使用。

  • sleep()需要捕获异常,而wait(),notify()和notifyAll()不需要捕获异常。

  • 由于sleep()不会释放锁,容易导致死锁的发生,所以一般情况下不使用sleep()。

你可能感兴趣的:(sleep方法和wait方法的区别)