struct timeval 表示并及时与两个成员, tv_sec (秒)和 tv_usec (微秒)。在此表示中, tv_usec 本身不是绝对时间,它是 tv_sec 的子秒偏移量。

struct timespec 的工作方式相同,只是它的偏移量( tv_nsec )不是微秒,而是以纳秒为单位存储。

问题是:有没有一种标准的方法可以在这两者之间进行转换?

有帮助吗?

解决方案

看看这个文档,我想将 tv_usec 乘以1000足以获得 tv_nsec

更重要的是,我怀疑是不同结构的来源:它们可以由不同的时钟填充。

其他提示

sys / time.h 中有两个宏可以达到你想要的效果:

TIMEVAL_TO_TIMESPEC(X, Y)

TIMESPEC_TO_TIMEVAL(X, Y)

请参阅此处的文档: http://www.daemon-systems.org/man/TIMEVAL_TO_TIMESPEC。 3.html

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top