博客專欄

EEPW首頁 > 博客 > 關(guān)于Linux 中sleep()函數(shù)說明

關(guān)于Linux 中sleep()函數(shù)說明

發(fā)布人:電子禪石 時間:2022-01-05 來源:工程師 發(fā)布文章
相關(guān)函數(shù):signal, alarm
 
頭文件:#include <unistd.h>
 
定義函數(shù):unsigned int sleep(unsigned int seconds);
 
函數(shù)說明:sleep()會令目前的進程暫停, 直到達到參數(shù)seconds 所指定的時間, 或是被信號所中斷.
 
返回值:若進程/線程掛起到參數(shù)所指定的時間則返回0,若有信號中斷則返回剩余秒數(shù)。


linux下Sleep()函數(shù):單位為毫秒
 
如果需要更精確可以用usleep單位為微秒
線程休眠函數(shù):void usleep(unsigned long usec);
 
linux下delay()函數(shù):
原型為extern void delay(unsigned int msec);
它可以延時msec*4毫秒,也就是如果想延時一秒鐘的話,可以這么用 delay(250);

這里寫圖片描述

分析:

unistd.h

sleep簡單的說,類似使當(dāng)前進程睡眠,進程睡眠,就是將進程掛起,不再占用CPU(自動放棄CPU)。
這里sleep是為了讓子進程在父進程之后執(zhí)行,試想如果子進程先執(zhí)行完了,父進程就會永遠阻塞在waitpid函數(shù),等待那個已經(jīng)結(jié)束的子進程

轉(zhuǎn)載學(xué)習(xí):https://blog.csdn.net/fly__chen/article/details/53175301

程序掛起操作


*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: C

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉