我正在将一些vxWorks代码移植到Linux上。
我看了这个answer,它推荐CLOCK_MONOTONIC。这是以下定义的合适替代:
#define GetTickCount() ((1000.0 * (double)tickGet())/((double)sysClkRateGet())))发布于 2011-10-12 01:38:32
GetTickCount是一个windows API,描述如下:
检索自系统启动以来所经过的毫秒数,最多为49.7天
是的,CLOCK_MONOTONIC是要使用的正确的POSIX时钟。以下是未经测试的代码:
double GetTickCount(void)
{
struct timespec now;
if (clock_gettime(CLOCK_MONOTONIC, &now))
return 0;
return now.tv_sec * 1000.0 + now.tv_nsec / 1000000.0;
}https://stackoverflow.com/questions/7729686
复制相似问题