首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >了解虚拟人的时间信息

了解虚拟人的时间信息
EN

Stack Overflow用户
提问于 2013-08-04 00:39:38
回答 1查看 2.6K关注 0票数 0

我想了解虚拟心理gfxinfo日志上的时间信息。看起来是这样的:

代码语言:javascript
复制
Applications Graphics Acceleration Info:

Uptime: 16264702 Realtime: 28169900

有人能告诉我如何将这些数字与System.currentTimeMillis()联系起来吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-05 15:14:54

来自ActivityManagerService.java

代码语言:javascript
复制
    long uptime = SystemClock.uptimeMillis();
    long realtime = SystemClock.elapsedRealtime();
    pw.println("Applications Graphics Acceleration Info:");
    pw.println("Uptime: " + uptime + " Realtime: " + realtime);

还来自SystemClock描述:

有三种不同的时钟,它们不应混淆: System.currentTimeMillis()是标准的“墙壁”时钟(时间和日期),表示自那个时代以来的毫秒。挂钟可以由用户或电话网络设置(请参阅setCurrentTimeMillis(long)),因此时间可能会不期而至地向后或向前跳转。此时钟只应在与实际日期和时间的通信非常重要时使用,例如在日历或闹钟应用程序中。间隔或经过的时间测量应该使用不同的时钟。如果您正在使用System.currentTimeMillis(),请考虑收听ACTION_TIME_TICKACTION_TIME_CHANGEDACTION_TIMEZONE_CHANGED意图广播,以了解时间的变化。 自系统启动以来,uptimeMillis()以毫秒计。当系统进入深度睡眠(CPU关闭、显示黑暗、设备等待外部输入)时,此时钟停止,但不受时钟缩放、空闲或其他节能机制的影响。这是大多数间隔计时(如Thread.sleep(millls)Object.wait(millis)System.nanoTime() )的基础。该时钟保证是单调的,适用于间隔不跨越设备睡眠时的间隔定时。大多数接受时间戳值的方法目前都期望使用uptimeMillis()时钟。 elapsedRealtime()elapsedRealtimeNanos()返回系统启动后的时间,包括深度睡眠。这个时钟保证是单调的,即使在CPU处于节电模式时也会继续滴答,这也是通用间隔计时的推荐依据。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18038692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档