sleep()方法是线程类Thread的静态方法,调用该方法使线程暂停执行指定的时间,将CPU让给其他线程,并不释放所持有的对象锁,休眠时间结束后线程回到就绪状态。
wait()是Object类的方法,调用wait()方法,线程释放所持有的对象锁,进入等待池中,只有调用notify()方法(或者notifyAll()方法),才能唤醒等待池中的线程进入等锁池,若线程获得对象的锁,则线程重新进入就绪状态。
本文详细解析了Java中线程的sleep()方法与wait()方法的区别与使用场景。sleep()方法使得线程暂停执行指定时间,不释放对象锁;而wait()方法则释放对象锁,线程进入等待状态直至被唤醒。
sleep()方法是线程类Thread的静态方法,调用该方法使线程暂停执行指定的时间,将CPU让给其他线程,并不释放所持有的对象锁,休眠时间结束后线程回到就绪状态。
wait()是Object类的方法,调用wait()方法,线程释放所持有的对象锁,进入等待池中,只有调用notify()方法(或者notifyAll()方法),才能唤醒等待池中的线程进入等锁池,若线程获得对象的锁,则线程重新进入就绪状态。

被折叠的 条评论
为什么被折叠?