相关函数:signal, alarm
头文件:#include <unistd.h>
定义函数:unsigned int sleep(unsigned int seconds);
函数说明:sleep()会令目前的进程暂停, 直到达到参数seconds 所指定的时间, 或是被信号所中断.
返回值:若进程/线程挂起到参数所指定的时间则返回0,若有信号中断则返回剩余秒数。
linux下Sleep()函数:单位为毫秒
如果需要更精确可以用usleep单位为微秒
线程休眠函数:void usleep(unsigned long usec);
linux下delay()函数:
原型为extern void delay(unsigned int msec);
它可以延时msec*4毫秒,也就是如果想延时一秒钟的话,可以这么用 delay(250);
例子:
分析:
unistd.h
sleep简单的说,类似使当前进程睡眠,进程睡眠,就是将进程挂起,不再占用CPU(自动放弃CPU)。
这里sleep是为了让子进程在父进程之后执行,试想如果子进程先执行完了,父进程就会永远阻塞在waitpid函数,等待那个已经结束的子进程
转载学习:https://blog.youkuaiyun.com/fly__chen/article/details/53175301
程序挂起操作
本文详细解析了Linux下的sleep(), usleep(), 和 delay()函数。这些函数用于实现进程或线程的休眠,其中sleep()以秒为单位,usleep()以微秒为单位,而delay()则提供了一种延时方法。文章还提供了使用示例,帮助读者理解如何在实际编程中应用这些函数。
869

被折叠的 条评论
为什么被折叠?



