关于sleep,usleep,time,clock函数使用总结(linux环境)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_40993826/article/details/84493930

关于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;
}

程序结果

在这里插入图片描述

展开阅读全文

没有更多推荐了,返回首页