1 #pragma once 2 3 #include <stddef.h> 4 5 #if defined(__cplusplus) 6 extern "C" { 7 #endif 8 9 // 操作系统定义时间以ns为单位 10 #define CLOCKS_PER_SEC 1000000 11 12 struct tm 13 { 14 int tm_sec; /* Seconds. [0-60] (1 leap second) */ 15 int tm_min; /* Minutes. [0-59] */ 16 int tm_hour; /* Hours. [0-23] */ 17 int tm_mday; /* Day. [1-31] */ 18 int tm_mon; /* Month. [0-11] */ 19 int tm_year; /* Year - 1900. */ 20 int tm_wday; /* Day of week. [0-6] */ 21 int tm_yday; /* Days in year.[0-365] */ 22 int tm_isdst; /* DST. [-1/0/1]*/ 23 24 long int __tm_gmtoff; /* Seconds east of UTC. */ 25 const char *__tm_zone; /* Timezone abbreviation. */ 26 }; 27 28 29 struct timespec 30 { 31 long int tv_sec; // 秒 32 long int tv_nsec; // 纳秒 33 }; 34 35 /** 36 * @brief 休眠指定时间 37 * 38 * @param rqtp 指定休眠的时间 39 * @param rmtp 返回的剩余休眠时间 40 * @return int 41 */ 42 int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); 43 44 /** 45 * @brief 获取系统当前cpu时间 46 * 47 * @return clock_t 48 */ 49 clock_t clock(); 50 51 #if defined(__cplusplus) 52 } /* extern "C" */ 53 #endif 54