歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux獲取毫秒級時間

Linux獲取毫秒級時間

日期:2017/2/28 16:31:10   编辑:Linux教程

在軟件設計中經常會用到關於時間的處理,用來計算語句、函數的執行時間,這時就需要精確到毫秒甚至是微妙的時間。

int gettimeofday(struct timeval *tv, struct timezone *tz);

int settimeofday(const struct timeval *tv , const struct timezone *tz);

struct timeval {

time_t tv_sec; /* seconds */

SUSEconds_t tv_usec; /* microseconds */

};

struct timezone {

int tz_minuteswest; /* minutes west of Greenwich */

int tz_dsttime; /* type of DST correction */

};

下面是個簡單的例子,用來統計程序的執行時間:

struct timeval t_start,t_end;

long cost_time = 0;

//get start time

gettimeofday(&t_start, NULL);

printf("Start time: %ld us", t_start.tv_usec);

//some operation

//get end time

gettimeofday(&t_end, NULL);

printf("End time: %ld us", t_end.tv_usec);

//calculate time slot

cost_time = t_end.tv_usec - t_start.tv_usec;

printf("Cost time: %ld us", cost_time);

輸出:

Start time: 438061 us

End time: 459867 us

Cost time: 21806 us

Copyright © Linux教程網 All Rights Reserved