国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Linux > 正文

linux sleep命令參數(shù)及用法詳解(linux休眠延遲執(zhí)行命令)

2020-06-13 12:24:42
字體:
來源:轉載
供稿:網(wǎng)友
sleep 可以用來將目前動作延遲一段時間
 
 
使用權限 : 所有使用者 
使用方式 : sleep [--help] [--version] number[smhd] 
說明 : sleep 可以用來將目前動作延遲一段時間 
參數(shù)說明 : 
--help : 顯示輔助訊息 
--version : 顯示版本編號 
number : 時間長度,后面可接 s、m、h 或 d 
其中 s 為秒,m 為 分鐘,h 為小時,d 為日數(shù) 
例子 : 
顯示目前時間后延遲 1 分鐘,之后再次顯示時間 : 
date;sleep 1m;date 

這個命令更多應用于shell腳本編程里和程序里 

如下面的一段程序: 

應用程序: 

復制代碼
代碼如下:

#include <syswait.h> 
usleep(n) //n微秒 
Sleep(n)//n毫秒 
sleep(n)//n秒 
驅動程序: 
#include <linux/delay.h> 
mdelay(n) //milliseconds 其實現(xiàn) 
#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毫秒 

每一個平臺不太一樣,最好自己定義一套跨平臺的宏進行控制 

秒還是微秒?關于延時函數(shù)sleep() 
因為要寫一段代碼,需要用到sleep()函數(shù),在我印象中,sleep(10)好像是休眠10微秒,結果卻是休眠了10秒(在Linux下)。覺得很奇怪,因為頭兒也記得好像是微秒為單位的。所以就查了一下。 

原來linux下的sleep函數(shù)原型為: 
unsigned int sleep(unsigned int seconds); 
而MFC中的Sleep函數(shù)原型為: 
void Sleep(DWORD dwMilliseconds); 
也就是說,Linux下(使用的gcc的庫),sleep()函數(shù)是以秒為單位的,sleep(1);就是休眠1秒。而MFC下的sleep()函數(shù)是以微秒為單位的,sleep(1000);才是休眠1秒。原來如此啊。而如果在Linux下也用微妙為單位休眠,可以使用線程休眠函數(shù):void usleep(unsigned long usec);當然,使用的時候別忘記#include <system.h>哦。 

另外值得一提的是,linux下還有個delay()函數(shù),原型為extern void delay(unsigned int msec);它可以延時msec*4毫秒,也就是如果想延時一秒鐘的話,可以這么用 delay(250);


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 翁牛特旗| 定结县| 特克斯县| 宣威市| 弋阳县| 安龙县| 和硕县| 石首市| 定结县| 扎囊县| 彭阳县| 寿阳县| 南昌县| 桦南县| 得荣县| 石家庄市| 乌兰县| 昆山市| 珠海市| 察雅县| 海城市| 武宁县| 礼泉县| 金乡县| 拉孜县| 平武县| 阳西县| 彰化市| 喀什市| 乌兰浩特市| 连平县| 泰来县| 大丰市| 新河县| 灵宝市| 新昌县| 文山县| 定兴县| 兴文县| 科尔| 大关县|