作用
clock_gettime是基于Linux C语言的时间函数,他可以用于计算精度和纳秒。
//头文件
#include?
//函数原型
int?clock_gettime(?clockid_t?clock_id,struct?timespec?*?tp?);
//?timespec?结构体
struct?timespec?{?
????__time_t?tv_sec;?/*?秒?*/?
????__syscall_s?long_t?tv_nsec;?/*?纳秒?*/
};
clock_id: 是指使用时钟的类型
- CLOCK_REALTIME:是指系统时间,随着系统时间的改变而改变。系统时钟会被用户而改变。
- CLOCK_MONOTONIC:指从系统启动时开始计时。不受系统影响,也不会被用户改变。
- CLOCK_PROCESS_CPUTIME_ID:指这个进程运行到当前代码时,系统花费的时间。
- CLOCK_THREAD_CPUTIME_ID:指这个线程运行到当前代码时,系统花费的时间。
使用方法
#include
#include
int?main(){
????struct?timespec?now;
????clock_gettime(CLOCK_MONOTONIC,&now);
????printf("Seconds?=?%ld?\t?Nanoseconds?=?%ld\n",,?now.tv_sec,?now.tv_nsec);
????return?0;
}