【发布时间】:2014-09-19 09:52:14
【问题描述】:
我已经搜索了一个多小时,但我似乎无法找到解决方案!
我正在寻找一个函数,它可以为我提供与 Windows 上的 GetLocalTime 类似的结构。对我来说重要的是这个结构有小时、分钟、秒和毫秒。
localtime() 不包括毫秒,因此我不能使用它!
我会欣赏使用标准库或其他非常小的库的解决方案,因为我正在使用 Raspberry Pi 并且不使用像 boost 这样的大型库!
【问题讨论】:
-
gettimeofday怎么样?或者clock_gettime,如果您想要更高的精度? -
FWIW,Windows 的
GetLocalTime函数不提供毫秒精度...wMilliseconds字段只会在大约 15Hz 时更新(即,您在 ~66ms 内获得相同的值,然后查看接下来的 ~66ms 的值要大 ~66ms)。 -
@TonyD 这是一个普遍的问题。 Posix
clock_gettime函数返回纳秒,但也不能保证实际粒度接近纳秒。 -
@JamesKanze:当然,但是这个问题强调了实际毫秒精度的必要性 - “不包括毫秒,因此我不能使用它” - 所以我只是指点考虑到移植前的时机不是那么准确,因此这种需求可能不会那么强烈......
-
@TonyD 是的。鉴于此,将
time的结果乘以 1000 也不会差太多。
标签: c++ c linux time raspberry-pi