新睿云

> 知识库 > Linux 睡眠时间函数如何使用?延迟指定时间sleep命令了解一下

Linux 睡眠时间函数如何使用?延迟指定时间sleep命令了解一下

作者/来源:新睿云 发布时间:2019-10-31

Linux免费开源,主要用于服务器领域,性能稳定安全,95%的企业服务器使用的都是 Linux 系统。Linux功能强大,包含的函数也很多,其中Linux包含三种睡眠时间函数,sleep()、usleep()、nanosleep()函数。这三种睡眠时间函数有什么区别?那作为常用的sleep函数又该如何使用?

linux sleep

1.sleep()——以秒为单位

unsigned int sleep(unsigned int seconds);

sleep()非系统调用,sleep()是在库函数中实现的,它是通过alarm()来设定报警时间,使用sigsuspend()将进程挂起在信号SIGALARM上。sleep()只能精确到秒级上。sleep()会令目前的进程暂停,直到达到参数seconds 所指定的时间,或是被信号所中断。

2.usleep()——以微秒为单位

unsigned int usleep(unsigned int useconds);

除了时间单位为微秒以外,在使用上与sleep()差不多。还有就是实现也是不同的,sleep是用alarm实现的,时间单位为s,而usleep的时间单位为us,所以说它们的实现不同,但都是linux用的,而window下不能用,因为都是sleep和usleep都是在unistd.h下定义的。

3.nanosleep( )——以纳秒为单位

该函数属于linux中的短延迟函数,保证了函数的精确度。

linux sleep

在linux编程中,有时候会用到定时功能,常见的是用sleep(time)函数来睡眠time秒。sleep是一个命令行实用程序,允许您将调用进程挂起一段指定的时间。也就是说,sleep命令在给定的时间内暂停下一个命令的执行。这个函数是可以被中断的,即当进程在睡眠的过程中,如果被中断,那么当中断结束回来再执行该进程的时候,该进程会从sleep函数的下一条语句执行;这样的话就不会睡眠time秒了。那么sleep函数如何使用?

使用权限 : 所有使用者

使用方式 : sleep [--help] [--version] number[smhd]

说明 : sleep 可以用来将目前动作延迟一段时间

参数说明 :

–help : 显示辅助讯息

–version : 显示版本编号

number : 时间长度,后面可接 s(秒)、m(分钟)、h(小时)或 d(日)

简单例子 :

显示目前时间后延迟5小时,之后再次显示时间 :

date;sleep 5h;date

热门标签
免费领云产品

免费用

立即领取
联系客服
在线客服   
反馈意见
返回顶部
{{item.description}}

—您的烦恼我们已经收到—

我们会将处理结果发送至您的手机

请耐心等待