SystemClock.sleep和Thread.sleep区别及使用场景

lucers 2016-07-19 10:08:01
请位大神解释下SystemClock.sleep和Thread.sleep区别及使用场景
...全文
492 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2016-07-20
  • 打赏
  • 举报
回复
简单的说,Thread.sleep()会抛出异常,而SystemClock.sleep()不会抛出异常 对于Android,推荐直接使用 SystemClock.sleep()即可 通过查看源码,发现 SystemClock.sleep() 其实调用的就是 Thread.sleep()方法 除了抛不抛异常,本质的区别是: SystemClock.sleep()不能被中断,无论如何都会让当前线程休眠指定的时间 而Thread.sleep()可以被中断,有可能在指定的休眠时间前被中断
lucers 2016-07-19
  • 打赏
  • 举报
回复
我只想知道在什么情况下该使用Thread.sleep 什么情况下使用SystemClock.sleep
lucers 2016-07-19
  • 打赏
  • 举报
回复
问下中断事件延迟知道下一个中断事件是指system应该在子线程的循环中使用么?
自由自在_Yu 2016-07-19
  • 打赏
  • 举报
回复
Thread.sleep()是java提供的函数。在调用该函数的过程中可能会发生InterruptedException异常。 SystemClock.sleep()是android提供的函数。在调用该函数的过程中不会发生InterruptedException异常,中断事件将要被延迟直到下一个中断事件。Use this function for delays if you do not use Thread.interrupt(), as it will preserve the interrupted state of the thread.

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧