Android中的时间:currentTimeMillis,uptimeMillis,elapsedRealtime
2016-09-30 17:01
1846 查看
System.currentTimeMillis() 系统时间,也就是日期时间,可以被系统设置修改,然后值就会发生跳变。
SystemClock.uptimeMillis();//Returns milliseconds since boot, not counting time spent in deep sleep. 自开机后,经过的时间,不包括深度睡眠的时间
SystemClock.elapsedRealtime();//Returns milliseconds since boot, including time
spent in sleep 自开机后,经过的时间,包括深度睡眠的时间
SystemClock.currentThreadTimeMillis();//Returns
milliseconds running in the current thread. 在当前线程中已运行的时间
SystemClock.sleep(100);
// 类似Thread.sleep(100);但是该方法会忽略InterruptedException
System.currentTimeMillis()不适合计算时间间隔,
now = System.currentTimeMillis()
//do something...
duration = System.currentTimeMillis() -now;
如果在do something的时候,改变了系统时间,那么 获取duration就不准了。通常在比较小的时间里,(毫秒级,秒级)一般不会有什么问题,系统时间可能不会改变。但是如果时间很长的话,那就保证不了了
uptimeMillis由于不计算睡眠时间,所以非常适合做一些特殊的时间间隔计算
elapsedRealtime 包括睡眠时间,适用于任何情况下的时间间隔计算
SystemClock.uptimeMillis();//Returns milliseconds since boot, not counting time spent in deep sleep. 自开机后,经过的时间,不包括深度睡眠的时间
SystemClock.elapsedRealtime();//Returns milliseconds since boot, including time
spent in sleep 自开机后,经过的时间,包括深度睡眠的时间
SystemClock.currentThreadTimeMillis();//Returns
milliseconds running in the current thread. 在当前线程中已运行的时间
SystemClock.sleep(100);
// 类似Thread.sleep(100);但是该方法会忽略InterruptedException
System.currentTimeMillis()不适合计算时间间隔,
now = System.currentTimeMillis()
//do something...
duration = System.currentTimeMillis() -now;
如果在do something的时候,改变了系统时间,那么 获取duration就不准了。通常在比较小的时间里,(毫秒级,秒级)一般不会有什么问题,系统时间可能不会改变。但是如果时间很长的话,那就保证不了了
uptimeMillis由于不计算睡眠时间,所以非常适合做一些特殊的时间间隔计算
elapsedRealtime 包括睡眠时间,适用于任何情况下的时间间隔计算
相关文章推荐
- Android中的时间:currentTimeMillis,uptimeMillis,elapsedRealtime
- Android中的时间:currentTimeMillis,uptimeMillis,elapsed
- 获取系统时间的方法与区别elapsedRealtime,currentTimeMillis,uptimeMillis
- System.currentTimeMillis()、uptimeMillis和elapsedRealtime 三者区别
- currentTimeMillis,elapsedRealtime,uptimeMillis三个时间的区别
- System.currentTimeMillis() uptimeMillis() elapsedRealtime() 区别
- System.currentTimeMillis() uptimeMillis elapsedRealtime 区别 .
- System.currentTimeMillis() uptimeMillis elapsedRealtime 区别
- System.currentTimeMillis() uptimeMillis elapsedRealtime 区别
- System.currentTimeMillis() uptimeMillis elapsedRealtime 区别
- System.currentTimeMillis() uptimeMillis elapsedRealtime 区别
- System.currentTimeMillis()和SystemClock.elapsedRealtime()
- 由system.currentTimeMillis() 获得当前的时间
- System.currentTimeMillis,getTimeInMillis与new Date().getTime获取当前时间戳耗时比较
- System.currentTimeMillis()获得当前时间
- Java进阶(十六)使用new Date()和System.currentTimeMillis()获取当前时间戳
- System.currentTimeMillis()计算方式与时间的单位转换
- JavaSE8基础 System.currentTimeMillis 粗略统计一段代码的执行时间
- 获得当前的时间——system.currentTimeMillis()
- java使用new Date()和System.currentTimeMillis()获取当前时间戳(转载)