(多线程)多线程中sleep与wait的区别
?
1.sleep(time)
?
2.wait() / wait(time)
?
?
区别:
何时解除冻结状态:
sleep(time) 必须指定睡眠时间,时间一到,自动解除冻结状态
wait()? 可以不指定时间,由notify()/notifyAll()唤醒
wait(time)可以指定时间,时间到,不再等待
?
cpu执行权与锁的释放:
sleep(time)? 进入睡眠,则释放CPU执行权,继续持有锁
wait()/wait(time)? 进入等待,则释放CPU执行权,同时释放锁
?