sleep()方法和wait()方法的比较
大家好,我是joker,希望你快乐。
sleep()方法和wait()方法都是让线程进入到等待状态。具体的一些区别我们下面来进行一个对比总结。
使用方式不同
wait() 方法必须配合 synchronized 一起使用,不然在运行时就会抛出IllegalMonitorStateException 的异常。
sleep()方法不需要,可以单独使用。
唤醒方式不同
sleep()方法,到达指定时间后不需要其他操作会自动唤醒。
wait()方法,如果调用超时时间参数的方法,到达指定时间后同样不需要其他操作会自动唤醒。如果调用无参方法,会一直等待,可以通过,notify(),notifyAll()方法进行唤醒。
释放资源不同
sleep()方法不会释放锁资源。
wait()方法会释放锁资源。
所属类不同
sleep()方法在Thread类中。
wait()方法在Object类中。
作者:Crazy_Joker
来源:http://www.cnblogs.com/Crazy_Joker
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
来源:http://www.cnblogs.com/Crazy_Joker
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。