有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Android的时间粒度是多少?

我知道Windows的时钟时间粒度是几十毫秒

  • 安卓操作系统使用什么时间粒度
  • System.currentTimeMillis()System.nanoTime()中提供了什么粒度
  • Android中的这些方法使用相同的硬件时间源吗

共 (1) 个答案

  1. # 1 楼答案

    如果我理解你所说的粒度:

    关于第一点/第三点: 这取决于两个因素,硬件(cpu时钟、总线等)和系统工作负载(可能导致延迟),因此您可以:

    • 通过检查两个输出之间的时间差来计算粒度
    • 检查您使用的android版本是否提供了确定粒度的方法,但通常取决于低于VM级别的驱动程序

    关于第二点:

    • “System.currentTimeMillis()”返回UTC 1970年1月1日以来的时间(毫秒)
    • “System.nanoTime()”返回正在运行的Java虚拟机的高分辨率时间源的当前值,单位为纳秒

    (信息来源Android documentation

    但它们取决于安卓系统使用的虚拟机