【发布时间】:2011-10-27 15:39:36
【问题描述】:
我需要计算一段代码执行所需的时间,现在我正在使用clock_t,如下所示:
clock_t start = clock();
/* Do something here */
float executionTime = (clock()-(float)start) / CLOCKS_PER_SEC;
这在模拟器中有效,但在设备上运行时,该值始终低于应有的值。当同时运行模拟器和我的设备时,模拟器首先完成,但当我的设备完成时,它的执行时间更短。
模拟器代码和设备代码之间的唯一区别是有几个函数是用 ARM 程序集为设备编写的。
如果这与我使用 Xcode 4.1 和 iOS 4.3 相关。
【问题讨论】:
-
什么值低于应有的值?如果值为 executionTime,则可能是关闭的 CLOCKS_PER_SEC,这并非闻所未闻。如果它的开始是关闭的,那么你知道它是时钟()。
-
执行时间低于设备上应有的时间。如果是 CLOCKS_PER_SEC 关闭,是否可以修复它?