1.既然要講sleep,那麼大家就有必要了解一下什麼是訊號。
訊號:是unix程序間通訊的一種標準方式。
訊號的產生:1.鍵盤快捷鍵
2.異常
3.作業系統命令和函式
4.鬧鐘
訊號的數量:64種,1-31是普通訊號,34-64是是時時訊號
my_sleep版本one(有bug):
#include #include #include #include void handler(int sig)
{}int mysleep(int seconds)
int main()
return 0;
}
my_sleep版本two:
#include #include #include #include void handler(int sig)
{}int mysleep(int seconds)
int main()
return 0;
}
第乙個sleep版本的bug是它是不可重入的,第二個版本改進了,利用訊號遮蔽,將mysleep變成了可重入函式。
Linux 訊號 模擬實現sleep
1 產生訊號 產生訊號的3種方式 1 呼叫系統函式 kill raise abort 2 軟體異常行為 3 組合鍵 ctrl c ctrl d ctrl 等 處理訊號的3種方式 1 忽略。2 預設 很多情況下是終止 3 自定義 訊號捕捉 訊號在核心中的表示 1 遞達 執行訊號的處理動作稱為訊號遞達 ...
linux 模擬實現sleep函式
功能 將程序掛起一段時間 函式原型 include unsigned int sleep unsigned int seconds n秒 來舉乙個很簡單的栗子 執行以上 後,輸出結果如下 每隔一秒列印一次,這就是sleep函式的作用。那麼如何自己模擬實現sleep呢?先介紹一些我們會用到的函式 作用...
模擬實現Spring IOC
通過在類上標註 registration 註冊進容器,injection從容器注入物件 容器類 public class springcontainer else bean.setbeanclass c mappropsmap new hashmap 處理注入屬性 field props c.get...