【Java】线程中的wait和sleep

wait是Object类中的方法

sleep是Thread类中的方法

 

sleep不释放锁,不会让出系统资源。

wait是进入线程等待池中等待,让出系统资源。

 

sleep方法会自动唤醒,如果时间不到,想要唤醒,可以使用interrupt方法强行打断。

调用wait方法的线程,不会自己唤醒,需要线程调用 notify / notifyAll 方法唤醒等待池中的所有线程,才会进入就绪队列中等待系统分配资源。

 

Thread.sleep(0) // 触发操作系统立刻重新进行一次CPU竞争。

posted @ 2021-02-02 14:53    阅读(211)  评论(0编辑  收藏  举报