linux最准的定时器,Linux上准确的进程间定时器

我想测量发送者进程和使用者之间的ping时间.

这两个进程都在同一物理主机Linux 64位上运行.

我目前正在使用clock_gettime(CLOCK_REALTIME,& cur_ts);.

我基本上捕获当前时间戳cur_ts并将其发送给消费者进程;一旦它被另一端接收,我就调用clock_gettime(CLOCK_REALTIME,& cur_ts);再次在第二个过程中减去两次.

此过程是否准确测量两个进程之间的ping?我应该使用不同的东西吗?

谢谢

解决方法:

您正在使用正确的界面.这是一款Posix指定的HRT(高分辨率计时器),可在现代Loonix中使用,您的使用是规范标准.

对于ping分辨率,它可能无关紧要,但可以使用CLOCK_MONOTONIC,尤其是短时间间隔.在其他条件下,CLOCK_REALTIME可能更准确.但是,这些时钟的确切含义并不是由Posix指定的,而在Linux上,我相信所有这些都需要进行NTP调整.至少对于长时间间隔来说这是一件好事.

在Linux上,要在不进行NTP调整的情况下访问底层硬件时钟,您必须关闭Posix预留并使用CLOCK_MONOTONIC_RAW.

标签:c-3,linux,gcc,system-clock

来源: https://codeday.me/bug/20190629/1328071.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值