Java_多线程_sleep()和wait()的区别

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/Chill_Lyn/article/details/102764264

共同点

  • 二者都可以让线程暂停

区别

  • sleep是Thread类定义的静态方法,wait是Object类的非静态方法
  • 一个线程在哪里都可以执行sleep,但是wait要在同步代码块内
  • sleep不会释放对象锁,wait会释放
  • sleep是为了让线程暂停一段设定的时间,时间到后,自动苏醒;wait需要被notify唤醒,当另一个线程中执行了notify方法,并不会立即唤醒,而是将notify语句后面的语句执行完后再唤醒。

猜你喜欢

转载自blog.csdn.net/Chill_Lyn/article/details/102764264