日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux之睡眠函数(my_sleep)

發布時間:2023/11/30 linux 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux之睡眠函数(my_sleep) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我們在程序中,很多次用到sleep()函數,讓它睡眠幾秒后再執行該進程。今天呢,我要給大家實現一下sleep函數。

看看代碼哦:


運行結果:


結果中每隔三秒鐘,打印一條語句。實現了sleep(3)的功能。

關于sleep函數,在這里,我們首先讓主函數調用了my_sleep函數,my_sleep函數又調用了注冊處理函數,注冊了一個SIGALRM的信號;然后為其設置鬧鐘,看主函數中的my_sleep函數要睡眠多長時間,調用pause等待,那么什么時候處理信號呢?此時,在用戶態由于接收到的信號將其保存起來,使其處于未決狀態,進入內核態處理異常,再回到用戶態執行SIGALRM信號處理函數,信號處理函數返回時執行特殊的系統調用再次進入內核,處理完異常回用戶態,從中斷的嚇一條指令開始執行。當捕捉到信號之后pause返回-1,再調用alarm(0)清空鬧鐘,調用sigaction恢復SIGALRM信號以前的處理動作。

外附一張圖哈:(很重要哦)



比較短小,歡迎來訪哦~~


總結

以上是生活随笔為你收集整理的linux之睡眠函数(my_sleep)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。