首页 > 其他 > 详细

利用select 函数 实现sleep功能 达到纳米级

时间:2015-11-18 00:54:55      阅读:310      评论:0      收藏:0      [点我收藏+]

 利用select 函数 实现sleep达到纳米级 。

 当然这个数据计算出来不准确,本身就包含程序执行本身消耗的数量。

 原理是把select read write except  fd_set 全部设为NULL,这样select 就可以等待指定的时间。

#include <sys/select.h>
#include <stdio.h>
#include <time.h>
#include <sys/time.h>

int  main(){
        struct timeval tv;
        struct timeval start,stop;
        tv.tv_sec=2;
        tv.tv_usec=50000;
        gettimeofday(&start,NULL);
        //睡觉指定时间
        select(1,NULL,NULL,NULL,&tv);
        gettimeofday(&stop,NULL);
        //计算时间差
        printf("took %ld\n",stop.tv_usec+1000000*stop.tv_sec-
        start.tv_sec*1000000-start.tv_usec);
        return 0;
}

  

   地址 http://my.oschina.net/robinyao/blog/531798

利用select 函数 实现sleep功能 达到纳米级

原文:http://my.oschina.net/robinyao/blog/531798

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!