iOS 设备上的 ctime 无法正确测量时间

发布于 2024-11-29 21:06:24 字数 357 浏览 2 评论 0原文

我需要计算一段代码执行所需的时间,现在我正在使用clock_t,如下所示:

clock_t start = clock();

/* Do something here */

float executionTime = (clock()-(float)start) / CLOCKS_PER_SEC;

这在模拟器中有效,但在设备上运行时,该值始终低于应有的值。当同时运行模拟器和我的设备时,模拟器首先完成,但当我的设备完成时,它的执行时间会更短。

模拟器代码和设备代码之间的唯一区别是,有几个函数是用 ARM 汇编语言为设备编写的。

如果这是相关的,我使用 Xcode 4.1 和 iOS 4.3。

I need to calculate the time that a piece of my code takes to execute, right now I am using clock_t like so:

clock_t start = clock();

/* Do something here */

float executionTime = (clock()-(float)start) / CLOCKS_PER_SEC;

This works in the simulator, but when run on the device the value is always lower than what it should be. When running the simulator and my device at the same time the simulator finishes first but when my device finishes it has a shorter execution time.

The only difference between the simulator code and the device code is that a couple of functions are written in ARM assembly for the device.

In case this is relevant im using Xcode 4.1 and iOS 4.3.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

情域 2024-12-06 21:06:24

您是否尝试过使用 gettimeofday(2)mach_absolute_time() 代替吗?

Have you tried using either gettimeofday(2) or mach_absolute_time() instead?

三生池水覆流年 2024-12-06 21:06:24

似乎在我重新启动计算机后,我的设备时钟()再次工作。感谢大家花时间回复(:

It seems that after I rebooted my computer and my device clock() works again. Thanks to everyone that took the time to reply (:

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文