Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android传感器时间戳参考_Java_Android_Time_Timestamp_Android Sensors - Fatal编程技术网

Java Android传感器时间戳参考

Java Android传感器时间戳参考,java,android,time,timestamp,android-sensors,Java,Android,Time,Timestamp,Android Sensors,我正在使用Android传感器,并在数据库中介绍各种信息。我一直在研究,我发现每台设备提供的时间戳参考根据制造商的不同而不同(有些使用“正常运行时间”,另一些使用1970年的秒数) 我需要使用1970年的时间引用,所以我想到的解决这个问题的唯一方法是对每个传感器事件使用系统函数nanoTime()。关键是我需要的应用程序是非常快的(我做存储,可视化和其他东西),我不知道这是否会使整个过程变慢 伙计们,你们觉得怎么样?关于System.currentTimeMillis()呢?应该更快,因为它不太

我正在使用Android传感器,并在数据库中介绍各种信息。我一直在研究,我发现每台设备提供的时间戳参考根据制造商的不同而不同(有些使用“正常运行时间”,另一些使用1970年的秒数)

我需要使用1970年的时间引用,所以我想到的解决这个问题的唯一方法是对每个传感器事件使用系统函数nanoTime()。关键是我需要的应用程序是非常快的(我做存储,可视化和其他东西),我不知道这是否会使整个过程变慢


伙计们,你们觉得怎么样?

关于
System.currentTimeMillis()
呢?应该更快,因为它不太精确。请注意,您可能过早地对此进行了优化。在这种情况下,时间函数不太可能成为您的瓶颈。瓶颈可能会插入数据库。但仍然是一个系统调用…我不知道经常使用它们是否是一个好主意(让我们想象一个高速设备或使用最快延迟的移动电话)。现在我看到你的编辑…这将是真正的问题,如果它将是一个瓶颈或不是…我认为你应该试试它。我在性能关键型应用程序中使用过System.currentTimeMillis(),没有任何问题。是的,我会尝试……无论如何,我希望时间以纳秒为单位……你认为精度会是一个真正的问题吗?不,我不想。如果这能让您感觉更好,您可以对1000个对
System.nanoTime()
的调用进行基准测试,看看它的平均性能如何。我的猜测是,每次通话时间将少于1毫秒。事实上,我刚刚创建了一个测试程序,
nanoTime()
的1000000次迭代耗时61毫秒。在不到一毫秒的时间内进行100次迭代。这很快:)