#pragma once #include "stddef.h" // 操作系统定义时间以ns为单位 #define CLOCKS_PER_SEC 1000000 struct tm { int tm_sec; /* Seconds. [0-60] (1 leap second) */ int tm_min; /* Minutes. [0-59] */ int tm_hour; /* Hours. [0-23] */ int tm_mday; /* Day. [1-31] */ int tm_mon; /* Month. [0-11] */ int tm_year; /* Year - 1900. */ int tm_wday; /* Day of week. [0-6] */ int tm_yday; /* Days in year.[0-365] */ int tm_isdst; /* DST. [-1/0/1]*/ long int __tm_gmtoff; /* Seconds east of UTC. */ const char *__tm_zone; /* Timezone abbreviation. */ }; struct timespec { long int tv_sec; // 秒 long long tv_nsec; // 纳秒 }; /** * @brief 休眠指定时间 * * @param rqtp 指定休眠的时间 * @param rmtp 返回的剩余休眠时间 * @return int */ extern int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); /** * @brief 睡眠指定时间 * * @param usec 微秒 * @return int */ extern int usleep(useconds_t usec); /** * @brief 获取当前的CPU时间 * * @return uint64_t timer_jiffies */ extern uint64_t clock();