作用
clock_gettime是基于Linux C語言的時間函數(shù),他可以用于計算精度和納秒巡莹。
//頭文件
#include <time.h>
//函數(shù)原型
int clock_gettime( clockid_t clock_id,struct timespec * tp );
// timespec 結(jié)構(gòu)體
struct timespec {
__time_t tv_sec; /* 秒 */
__syscall_s long_t tv_nsec; /* 納秒 */
};
clock_id: 是指使用時鐘的類型
CLOCK_REALTIME:是指系統(tǒng)時間,隨著系統(tǒng)時間的改變而改變。系統(tǒng)時鐘會被用戶而改變。
CLOCK_MONOTONIC:指從系統(tǒng)啟動時開始計時捂掰。不受系統(tǒng)影響蜈块,也不會被用戶改變。
CLOCK_PROCESS_CPUTIME_ID:指這個進程運行到當前代碼時忠寻,系統(tǒng)花費的時間惧浴。
CLOCK_THREAD_CPUTIME_ID:指這個線程運行到當前代碼時,系統(tǒng)花費的時間奕剃。
使用方法
#include<stdio.h>
#include<time.h>
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;
}