首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >gettimeofday()的单位是什么?

gettimeofday()的单位是什么?
EN

Stack Overflow用户
提问于 2013-07-25 14:26:48
回答 2查看 15.6K关注 0票数 5

我有一个程序可以计算发布-订阅模型中对象的延迟。我使用了以下函数作为时间戳:

代码语言:javascript
复制
uint64_t GetTimeStamp() {
    struct timeval tv;
    gettimeofday(&tv,NULL);
    return tv.tv_sec*(uint64_t)1000000+tv.tv_usec;
}

延迟是通过发布服务器和订阅服务器的时间戳差异来衡量的。所以,我关心的是测量的延迟单位。是以秒还是微秒为单位?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-25 14:31:16

timeval结构有tv_sectv_usec,前者提供秒的绝对值,后者提供以微秒为单位的剩余分数。

所以,你可以在微秒内得到分辨率。

有关更多信息,请访问http://www.gnu.org/software/libc/manual/html_node/Elapsed-Time.html

票数 8
EN

Stack Overflow用户

发布于 2013-07-25 14:34:48

tv.tv_sec提供第二个计数,tv.tv_usec提供剩余的微秒计数。

关于gettimeofday()原理及其准确性:

How is the microsecond time of linux gettimeofday() obtained and what is its accuracy?

Is gettimeofday() guaranteed to be of microsecond resolution?

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17850565

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档