sleep()

sleep()

Thread.sleep()会让当前线程休眠若干时间,让其他线程有机会继续执行,但它并不释放对象锁。也就是说如果有synchronized同步代码块,其他线程仍然不能访问共享数据。它会抛出一个InterruptException中断异常,InterruptException不是运行时异常,也就是说程序必须捕获并且处理它,当线程在sleep()休眠时,如果被中断,这个异常就会产生。

注意:

1、线程睡眠是帮助所有线程获得运行机会的最好方法。

2、线程睡眠到期自动苏醒,并返回到可运行状态,不是运行状态。sleep()中指定的时间是线程不会运行的最短时间。因此,sleep()方法不能保证该线程睡眠到期后就开始执行。

3、sleep()是静态方法,只能控制当前正在运行的线程。


扩展:

运行时异常和非运行时异常参考地址:http://blog.csdn.net/lan12334321234/article/details/70049446

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。