0

我正在尝试计算部分应用程序的执行时间,但由于我需要获得毫秒数,而且我也需要获得较长的执行时间。我目前正在使用 ctime 中的 clock_t = clock(),但我认为它的范围只有 72 分钟,这不适合我的需要。有没有其他可移植的方法来计算保持毫秒精度的大执行时间?或者以某种方式克服 clock_t 的这种限制?

4

2 回答 2

3

你需要问的第一个问题是你真的需要毫秒精度的时间跨度超过一个小时。

如果您执行一种简单的方法(无需四处寻找已经执行此操作的库),只需跟踪计时器何时翻转并将其添加到另一个变量。

于 2010-06-28T15:51:50.020 回答
2

不幸的是,据我所知,没有一个是跨平台的(但这并不是说不存在)。

然而,解决这个问题很容易。只需创建一个单独的线程(例如:boost.thread),它会长时间休眠,将到目前为止的时间差加到总数中,然后重复。当程序关闭时,停止线程,它也可以在它退出之前添加到这个计数器。

于 2010-06-28T15:50:55.170 回答