Linux 下c获取当前时间(精确到秒和毫秒或者微秒)_linux获取当前时间c语言-CSDN博客
Linux获取进程执行时间-阿里云开发者社区 (aliyun.com)
注意使用纳秒的时候可能会超出后循环,
注意ts.tv_sec * 1000 + ts.tv_nsec / 1e6就是毫秒
要ms的话,就是0.001s,可以直接拿秒用Linux获取进程执行时间-阿里云开发者社区 (aliyun.com)
#include <stdio.h>
#include <time.h>
int main() {
struct timespec startTime;
clock_gettime(CLOCK_MONOTONIC, &startTime);
// 运行一些代码或操作
struct timespec endTime;
clock_gettime(CLOCK_MONOTONIC, &endTime);
// 计算运行时间
long elapsedTime = (endTime.tv_sec - startTime.tv_sec) * 1000; // 秒转为毫秒
elapsedTime += (endTime.tv_nsec - startTime.tv_nsec) / 1000000; // 纳秒转为毫秒
printf("Elapsed time: %ld milliseconds\n", elapsedTime);
return 0;
}
用函数打印时间常用方法
recoder_count++;
if((recoder_count % 200) == 0)
{
aw_print("awi_alsa_play_write time:%d",(awi_time_get_ms()>t1)? (awi_time_get_ms()-t1):(t1-awi_time_get_ms()));
recoder_count = 0;
t1 = awi_time_get_ms();
}