如何获得(非常精确)的时间戳?

时间:2011-11-23 09:58:53

标签: unix time

如何获得(某种极其精确的)时间戳?

我的应用程序需要获取并存储(准确)服务器时间,包括小时,分钟,秒和毫秒。

如何获得这个(非常精确的)时间戳?

2 个答案:

答案 0 :(得分:1)

使用clock_gettime(3)。有关详细信息,请查看here

答案 1 :(得分:0)

由于您似乎不需要纳秒精度,正确且便携的方式是 mach_absolute_time()一起使用,但使用gettimeofday()

#include <sys/time.h>

...

struct timeval tv;
gettimeofday(&tv, NULL);

...

然后,您可以访问tv.tv_sec中1970-01-01 00:00 UTC后的秒数和tv.tv_usec中的微秒数。