wait和sleep方法比较
- 含义
- wait:等待,需要等待其他对象来结束该状态
- sleep:休眠,一定时长后自动醒来
- 从属关系
- wait:Object类中声明定义的方法,成员方法,所有对象都可使用
- sleep:Thread类中声明定义的静态方法,只有线程类对象可使用
- 使用方式
- wait:只能使用在同步代码中,是对象间执行顺序的调动,异步代码对象间没有前后关系
- sleep:可以在任意地方使用,只和自身对象有关
- 阻塞时间
- wait:超时时间,等待其他对象的时间过长,发生异常
- sleep:休眠时间,自定义,不会发生错误
- 同步处理
- wait:使其他线程有机会执行当前的同步操作
- sleep:同步操作中,在执行的对象调用sleep不会将执行权交给其他对象,而且一直保持执行权