linux 延時函式 msleep() 與mdelay()
http://blog.csdn.net/mayouyang/article/details/4228378
在Linux Driver開發中,經常要用到延遲函式:msleep,mdelay/udelay.
雖然msleep和mdelay都有延遲的作用,但他們是有區別的.
mdelay是忙等待函式,在延遲過程中無法執行其他任務.這個延遲的時間是準確的.是需要等待多少時間就會真正等待多少時間.而msleep是休眠函式,它不涉及忙等待.你如果是msleep(10),那實際上延遲的時間,大部分時候是要多於10ms的,是個不定的時間值.
他們的差異,平時我也講的出來,可是真正用起來的時候,就忘記了.曾在兩個driver的i2c的code中,需要用到delay函式,而我用了msleep函式,一直I2C速度超慢.而我又不知道哪裡出了問題,我潛意識中,認為我只delay了1ms,可是,實際上是十幾毫秒.
用mdelay能保證時間比較準確,但用msleep延遲大了4倍。可是用mdelay又耗cpu。
相關文章
- 延時函式函式
- 延時函式delay() sleep() Sleep()函式
- STM32延時函式的四種方法函式
- 何時使用函式表示式與函式宣告函式
- 51微控制器C語言延時函式C語言函式
- mysql時區與時間函式MySql函式
- STM32 HAL 定時器代替HAL_Delay延時函式定時器函式
- linux時間函式詳解Linux函式
- Linux下的時間函式Linux函式
- linux下C語言中的mkdir函式與rmdir函式LinuxC語言函式
- 時間函式:與時間相關那些事。。。函式
- 常用函式--時間函式函式
- Linux時間子系統之七:定時器的應用--msleep(),hrtimer_nanosleep()Linux定時器NaN
- WPS表格日期與時間函式函式
- void Delay(__IO u32 nCount)最簡單的延時函式函式
- Linux時間子系統之七:定時器的應用--msleep(),hrtimer_nanosleep()【轉】Linux定時器NaN
- 啟動延時縮短 50%-80%,函式計算釋出映象加速功能函式
- fork函式與vfork函式函式
- 兄弟連go教程(15)函式 - 延遲呼叫Go函式
- 【函式】Oracle EXTRACT()函式與to_char() 函式函式Oracle
- 時間函式函式
- 分散式之延時任務方案解析分散式
- 只需兩步便可生成 51 微控制器最精準的延時函式函式
- 聚合函式與數字函式函式
- 宣告與函式、函式指標函式指標
- T-SQL——函式——時間操作函式SQL函式
- linux與windows下C++的sleep函式LinuxWindowsC++函式
- PHP 時間函式PHP函式
- 日期時間函式函式
- oracle時間函式Oracle函式
- MySQL時間函式MySql函式
- Sql時間函式SQL函式
- 函式節流與函式防抖函式
- 回撥函式 與 函式閉包函式
- Oracle分析函式與視窗函式Oracle函式
- 建構函式與解構函式函式
- linux系統程式設計之檔案與IO(七):時間函式小結Linux程式設計函式
- Python函式與lambda 表示式(匿名函式)Python函式