1、sleep()方法是来自Thread类,而wait()方法是来自Object类
2、sleep方法没有释放锁,使得其他线程可以使用同步控制块或方法。而wait方法释放了拥有的锁
3、wait,notify和notifyAll只能在同步控制方法获知同步控制块里面使用,而sleep可以在任何地方使用
注意sleep(long millis)方法是需要指明休眠时间的,并且该方法是静态方法,也就是说只对当前对象有效,通过 t.sleep()让 t 对象进入sleep,这样的做法是错误的,它只会是使当前线程被sleep 而不是 t 线程
本文详细对比了Thread类的sleep()方法与Object类的wait()方法的区别。解释了这两种方法在线程控制中的作用,包括锁的释放与否、使用场景以及是否需要指定休眠时间等关键信息。
2274

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



