wait、sleep区别

共同点

都是让当前线程暂时放弃 CPU 的使用权,进入阻塞状态。

不同点

1. 来自不同的类:
wait():来自Object类;
sleep():来自Thread类;

2.关于锁的释放:
wait():在等待的过程中会释放锁;
sleep():在等待的过程中不会释放锁
3.使用的范围:
wait():必须在同步代码块中使用;
sleep():可以在任何地方使用;
4.是否需要捕获异常
wait():不需要捕获异常;
sleep():需要捕获异常;

posted on 2023-04-06 16:44  zhengbiyu  阅读(23)  评论(0编辑  收藏  举报