Java sleep wait区别

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011517841/article/details/82053094

 Java 中 sleep 方法和 wait 方法的区别

1)sleep是是属于Thread类的,wait是属于Object类的

2)在调用sleep()方法的过程中,线程不会释放锁,而wait方法释放了锁,前提条件是它已经持有锁。所以wait和notify(或者notifyAll)方法都必须被包裹在synchronized语句块

3)sleep()需要捕获异常, wait不需要

因为Thread.sleep()是让线程休眠。在这种睡眠状态下,你可能调用interrupte来终止线程,这样就会抛出InterruptException,只有捕获异常进行处理,才能正确的终止线程。

猜你喜欢

转载自blog.csdn.net/u011517841/article/details/82053094