我在linux机器上运行。如何检查我的系统是否支持使用CLOCK_MONOTONIC? 我试图在程序中使用它并得到奇怪的结果。问题可以在这里看到: https://stackoverflow.com/questions/21774286/calculating-time-elapsed-in-c-using-monotonic-clock-results-dont-make-sense
我开始认为这是由于幕后发生了一些奇怪的事情?
答案 0 :(得分:0)
[{3}}的手册页非常清楚地说明了这一点:
返回值
clock_gettime(),clock_settime()和clock_getres()返回0表示成功,或-1表示失败(在这种情况下,errno设置得恰当)。
因此,您需要检查返回值,而其他问题中的链接代码无法执行此操作。
答案 1 :(得分:0)
系统可能不支持CLOCK_MONOTONIC,您可以使用sysconf进行检查,特别是sysconf(_SC_MONOTONIC_CLOCK) > 0
,然后支持CLOCK_MONOTONIC
我希望这会有所帮助