当前位置:家常菜>百科>科技>正文

linux sleep命令

人气:190 ℃/2023-10-03 07:55:26

Linux系统下sleep命令是什么呢?下面是sleep命令的具体介绍:

1、sleep命令功能:

Linux系统下sleep命令可以用来将目前动作延迟一段时间。

2、使用权限:

所有使用者。

3、语法:

sleep [--help] [--version] number[smhd]

4、参数说明:

--help : 显示辅助讯息

--version : 显示版本编号

number : 时间长度,后面可接 s、m、h 或 d

其中 s 为秒,m 为 分钟,h 为小时,d 为日数

例如:

休眠5分钟

# sleep 5m

5、sleep命令更多应用于shell脚本编程里和程序里。

如下面的一段程序:

应用程序:

#include <syswait.h>

usleep(n) //n微秒

Sleep(n)//n毫秒

sleep(n)//n秒

驱动程序:

#include <linux/delay.h>

mdelay(n) //milliseconds 其实现

#ifdef notdef

#define mdelay(n) (\

{unsigned long msec=(n); while (msec--) udelay(1000);})

#else

#define mdelay(n) (\

(__builtin_constant_p(n) && (n)<=MAX_UDELAY_MS) ? udelay((n)*1000) : \

({unsigned long msec=(n); while (msec--) udelay(1000);}))

#endif

调用asm/delay.h的udelay,udelay应该是纳秒级的延时

Dos: 

sleep(1); //停留1秒 

delay(100); //停留100毫秒   

Windows: 

Sleep(100); //停留100毫秒 

Linux: 

sleep(1); //停留1秒 

usleep(1000); //停留1毫秒 

6、linux下的sleep函数和MFC中的Sleep函数原型区别:

linux下的sleep函数原型为:

unsigned int sleep(unsigned int seconds);

而MFC中的Sleep函数原型为:

void Sleep(DWORD dwMilliseconds);

也就是说,Linux下(使用的gcc的库),sleep()函数是以秒为单位的,sleep(1);就是休眠1秒。而MFC下的sleep()函数是以微秒为单位的,sleep(1000);才是休眠1秒。原来如此啊。而如果在Linux下也用微妙为单位休眠,可以使用线程休眠函数:void usleep(unsigned long usec);当然,使用的时候别忘记#include <system.h>。

本网站部分内容、图文来自于网络,如有内容侵犯您的合法权益,请及时与我们联系,我们将第一时间安排核实及删除!
CopyRight © 2007-2024 家常菜 All Rights Reserved. 手机版