sleep()与wait()的区别:
1.所属类不同
sleep定义在Thread类,是静态方法。
wait定义在Object类,是非静态方法。
2.唤醒条件不同
sleep是休眠时间到之后自动唤醒。
wait:在其他线程中,在同一锁对象上,调用notify()或者notify all()方法。
3.使用条件不同:
sleep没有任何前提条件。
wait:必须在当前线程上持有锁对象,在锁对象上调用。
4.休眠时对锁对象的持有情况不同
线程因为sleep方法处于阻塞状态时,在阻塞的时候不会放弃对锁的持有。
wait在阻塞状态下会放弃对锁对象的持有。
26.sleep() VS wait()
最新推荐文章于 2024-06-29 15:38:33 发布