Android 5.0 std :: clock()运行得更快

时间:2015-01-19 21:38:40

标签: android android-ndk

我正在编写一个原生的Android应用程序,它使用std :: clock()计算经过的时间(以毫秒为单位)。计算经过时间的示例代码如下:

elapsedTime = ((float)(std::clock() - startTime)/CLOCKS_PER_SEC) * 1000; 

然而,它似乎与常规时钟(笔记本电脑的时钟或常规手表)完全匹配。例如,30秒的逝去时间等于常规手表的20秒。这在以前版本的android(4.0等)上工作正常。关于它为何在不同版本的Android OS上表现不同的任何提示。

1 个答案:

答案 0 :(得分:1)

解决方案1 ​​:( CTT回复):C++ obtaining milliseconds time on Linux -- clock() doesn't seem to work properly

解决方案2 :( Harism评论)这里说明了std:与wallclock相比,clock可能会有很大差异(参见示例程序输出); en.cppreference.com/w/cpp/chrono/c/clock