wait: 必须暂定当前正在执行的线程,并释放资源锁,让其他线程可以有机会运行

 

notify/notifyall: 唤醒因锁池中的线程,使之运行

 

waitsleep区别

 

对于sleep()方法,我们首先要知道该方法是属于Thread类中的。而wait()方法,则是属于Object类中的。

 

sleep()方法导致了程序暂停执行指定的时间,让出cpu该其他线程,但是他的监控状态依然保持者,当指定的时间到了又会自动恢复运行状态。

 

在调用sleep()方法的过程中,线程不会释放对象锁。

 

而当调用wait()方法的时候,线程会放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象调用notify()方法后本线程才进入对象锁定池准备

 

获取对象锁进入运行状态。

 

相关文章:

  • 2022-12-23
  • 2021-10-08
  • 2021-10-18
  • 2022-12-23
  • 2018-01-24
  • 2021-12-22
  • 2021-07-28
  • 2021-12-11
猜你喜欢
  • 2021-11-27
  • 2021-12-26
  • 2022-12-23
  • 2021-08-16
  • 2022-12-23
  • 2021-07-30
  • 2021-11-25
相关资源
相似解决方案