clock
函数"clock_gettime"是基于Linux C语言的时间函数,他可以用于计算精度和纳秒。
#include<time.h>
int clock_gettime(clockid_t clk_id,struct timespec *tp);
clk_id : 检索和设置的clk_id指定的时钟时间。
CLOCK_REALTIME:系统实时时间,随系统实时时间改变而改变,即从UTC1970-1-1 0:0:0开始计时,中间时刻如果系统时间被用户改成其他,则对应的时间相应改变。
CLOCK_MONOTONIC:从系统启动这一刻起开始计时,不受系统时间被用户改变的影响。
CLOCK_PROCESS_CPUTIME_ID:本进程到当前代码系统CPU花费的时间。
CLOCK_THREAD_CPUTIME_ID:本线程到当前代码系统CPU花费的时间。
struct timespec{time_t tv_sec; /* 秒*/long tv_nsec; /* 纳秒*/}
测试代码:
#include <time.h>
#include <stdio.h>
#include <unistd.h>int main(int argc, char **argv)
{struct timespec time1 = {0, 0}; struct timespec time2 = {0, 0};float temp;clock_gettime(CLOCK_REALTIME, &time1); usleep(1000);clock_gettime(CLOCK_REALTIME, &time2); temp = (time2.tv_nsec - time1.tv_nsec) / 1000000;printf("time = %f ms\n", temp);return 0;
}
运行输出结果:
发布者:admin,转转请注明出处:http://www.yc00.com/news/1688956804a188047.html
评论列表(0条)