首页 > 代码库 > linux下的sleep()和usleep()的使用和区别

linux下的sleep()和usleep()的使用和区别

函数名: sleep
头文件: #include<windows.h> // 在VC中使用带上头文件
              #include<unistd.h>    // 在gcc编译器中,使用的头文件因gcc版本的不同而不同
功  能: 执行挂起指定的秒数
语  法: unsigned sleep(unsigned seconds);

 

#include<stdio.h>#include<stdlib.h>#include<time.h>int main(){    int a;    a=1;    printf("hello");    sleep(a);        /* VC 使用Sleep*/    printf("world");    return 0;}

 

  

函数名: usleep
头文件: #include <unistd.h>
功 能: usleep功能把进程挂起一段时间, 单位是微秒(百万分之一秒);
语 法: void usleep(int micro_seconds);
返回值: 无
内容说明:本函数可暂时使程序停止执行。参数 micro_seconds 为要暂停的微秒数(us)。

注 意:
这个函数不能工作在windows 操作系统中。用在Linux的测试环境下面。
参 见:usleep() 与sleep()类似,用于延迟挂起进程。进程被挂起放到reday queue。
在一般情况下,延迟时间数量级是秒的时候,尽可能使用sleep()函数。
如果延迟时间为几十毫秒(1ms = 1000us),或者更小,尽可能使用usleep()函数。这样才能最佳的利用CPU时间

linux下的sleep()和usleep()的使用和区别