关于sleep,usleep,time,clock函数使用总结(linux环境)
各个函数的使用介绍
- sleep、usleep函数在头文件 #include <unistd.h> 里面,sleep函数是让进程挂起xx秒,usleep函数是让进程挂起xx微秒。
sleep(5) ; //进程挂起5秒
usleep(1000000); //进程挂起1秒,也就是1百万微秒
- time函数是个C语言函数,在头文件 #include <time.h> 里面,返回从1970年:0时:0分:0秒到调用该函数时候积累的秒数。
time_t time(time_t * timer); //函数原型
time_t timer1 = time(NULL); //获取到当前秒数的方法一
time_t timer2;
time(&timer2); // 获取到当年秒数的方法二
- clock函数返回的cpu消耗的时间,进程挂起的时间不算在内,返回的数要除上CLOCKS_PER_SEC才能得到真实的秒数
clock_t clock(void); //函数原型
程序实验代码
#include <stdio.h>
#include <unistd.h>
#include <time.h>
int main()
{
time_t beg,end;
clock_t cb,ce;
cb = clock();
beg = time(NULL);
sleep(5);
ce = clock();
end = time(NULL);
printf("%ld %ld %ld %lf\n",cb,ce,CLOCKS_PER_SEC,(double)(ce-cb)/CLOCKS_PER_SEC);
printf("%ld %ld %lf\n",beg,end,difftime(end,beg));
beg = time(NULL);
usleep(1000000);
end = time(NULL);
printf("%ld %ld %lf\n",beg,end,difftime(end,beg));
return 0;
}