博客專欄

        EEPW首頁 > 博客 > 關于Linux 中sleep()函數說明

        關于Linux 中sleep()函數說明

        發布人:電子禪石 時間:2022-01-05 來源:工程師 發布文章
        相關函數: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.csdn.net/fly__chen/article/details/53175301

        程序掛起操作


        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。



        關鍵詞: C

        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 湛江市| 邮箱| 怀集县| 芦山县| 滨海县| 蓝田县| 资兴市| 神木县| 油尖旺区| 墨玉县| 望江县| 美姑县| 泾源县| 玛多县| 庄浪县| 拉萨市| 水富县| 新田县| 监利县| 肇州县| 法库县| 旬邑县| 十堰市| 铁岭市| 华阴市| 吉水县| 固原市| 政和县| 西乡县| 淮安市| 浪卡子县| 井冈山市| 噶尔县| 香河县| 福清市| 大悟县| 汝城县| 资兴市| 楚雄市| 遵义市| 龙州县|