11

Linux/Unix/Posix 是否为用户空间应用程序提供 API 以访问单调递增的时钟,精度为厘秒到毫秒?

在 Linux 上,/proc/uptime 提供基于字符串的浮点数表示系统已启动的秒数。

gettimeofday(2) 不提供单调递增的时钟。

我可以在 ITIMER_REAL 时域中使用 getitimer(2),将计时器设置为在(取决于平台的)最大值开始并忽略生成的信号,但根据手册页,计时器可以运行的最长时间约为 100 天,其中比我预期的运行时间短。

4

2 回答 2

14

将 POSIXclock_gettime()函数与CLOCK_MONOTONIC. 有关详细信息,请参见手册页

于 2008-10-17T04:27:44.243 回答
6

有clock_gettime:

struct timespec tp;
clock_gettime(CLOCK_MONOTONIC, &tp);
于 2008-10-17T04:24:39.397 回答