我的系统是否支持单调时钟?

时间:2014-02-14 08:59:21

标签: c time posix

我在linux机器上运行。如何检查我的系统是否支持使用CLOCK_MONOTONIC? 我试图在程序中使用它并得到奇怪的结果。问题可以在这里看到: https://stackoverflow.com/questions/21774286/calculating-time-elapsed-in-c-using-monotonic-clock-results-dont-make-sense

我开始认为这是由于幕后发生了一些奇怪的事情?

2 个答案:

答案 0 :(得分:0)

[{3}}的手册页非常清楚地说明了这一点:

  

返回值

     

clock_gettime(),clock_settime()和clock_getres()返回0表示成功,或-1表示失败(在这种情况下,errno设置得恰当)。

因此,您需要检查返回值,而其他问题中的链接代码无法执行此操作。

答案 1 :(得分:0)

系统可能不支持CLOCK_MONOTONIC,您可以使用sysconf进行检查,特别是sysconf(_SC_MONOTONIC_CLOCK) > 0,然后支持CLOCK_MONOTONIC

我希望这会有所帮助

相关问题