System.currentTimeMillis() uptimeMillis elapsedRealtime 区别

System.currentTimeMillis()  系统时间,也就是日期时间,能够被系统设置修改,而后值就会发生跳变。url

uptimeMillis 自开机后,通过的时间,不包括深度睡眠的时间.net

elapsedRealtime自开机后,通过的时间,包括深度睡眠的时间blog

 

因此System.currentTimeMillis()不适合计算时间间隔,eg,内存

now = System.currentTimeMillis()io

//do something...sed

duration = System.currentTimeMillis() -now;硬件


若是在do something的时候,改变了系统时间,那么 获取duration就不许了。一般在比较小的时间里,(毫秒级,秒级)通常不会有什么问题,系统时间可能不会改变。可是若是时间很长的话,那就保证不了了im

 

uptimeMillis因为不计算睡眠时间,因此很是适合作一些特殊的时间间隔计算时间

elapsedRealtime 包括睡眠时间,适用于任何状况下的时间间隔计算co

深度睡眠前所有的办公均可以接着,没必要重新敞开手续。进入了睡乡后,电脑将只有内存通电,用以保留办公情况的数值,而其它硬件则全部断电,由于这个耗电量十分低。

参考:http://zhidao.baidu.com/link?url=sO3npfaq2eTUXl551mZl-fR-C_iM59cDf3Z8-DFzybrJcHG9h1mty5kZ6RAvNXTaQMWp5f8ZLSG4cYKqJekLZboz8zMLuxKRjogGvLb9mLq

 

 

转自:http://blog.csdn.net/wutianyin222/article/details/8853958

相关文章
相关标签/搜索