我有一个从 Linux 移植到 MacOSX 的函数,它使用带有 CLOCK_THREAD_CPUTIME_ID 的clock_gettime 来测量进程花费的时间。我在互联网上找到了这段代码,它相当于 CLOCK_REALTIME:
#ifdef __MACH__ // OS X does not have clock_gettime, use clock_get_time
clock_serv_t cclock;
mach_timespec_t ts;
host_get_clock_service(mach_host_self(), CALENDAR_CLOCK, &cclock);
clock_get_time(cclock, &ts);
mach_port_deallocate(mach_task_self(), cclock);
#else
timespec ts;
clock_gettime(CLOCK_REALTIME, ts);
#endif
但我似乎无法找到一种简单的方法来获取 clock_gettime(CLOCK_THREAD_CPUTIME_ID, ts); 任何人都知道一个好的解决方案吗?