linux的sleep()和usleep()的使用和區別
函式名: sleep
標頭檔案: #include <windows.h> // 在VC中使用帶上標頭檔案
#include <unistd.h> // 在gcc編譯器中,使用的標頭檔案因gcc版本的不同而不同
功 能: 執行掛起指定的秒數
語 法: unsigned sleep(unsigned seconds);
示例:
#include <windows.h>
#include<stdio.h>
int main()
{
int a;
a=1;
printf("hello");
sleep(a); /* VC 使用Sleep*/
printf("world");
return 0;
}
函式名: usleep
標頭檔案: #include <unistd.h>
功 能: usleep功能把程式掛起一段時間, 單位是微秒(百萬分之一秒);
語 法: void usleep(int micro_seconds);
返回值: 無
內容說明:本函式可暫時使程式停止執行。引數 micro_seconds 為要暫停的微秒數(us)。
注 意:
這個函式不能工作在windows 作業系統中。用在Linux的測試環境下面。
參 見:usleep() 與sleep()類似,用於延遲掛起程式。程式被掛起放到reday queue。
是一般情況下,延遲時間數量級是秒的時候,儘可能使用sleep()函式。
如果延遲時間為幾十毫秒(1ms = 1000us),或者更小,儘可能使用usleep()函式。這樣才能最佳的利用CPU時間
時鐘換算:
微秒,時間單位,符號us(英語:microsecond ).
1微秒等於百萬分之一秒(10的負6 次方秒)
0.000 001 微秒 = 1皮秒
0.001 微秒 = 1納秒
1,000 微秒 = 1毫秒
1,000,000 微秒 = 1秒
1s = 1000ms
1ms = 1000μs
1μs = 1000ns
1ns = 1000ps
1秒(s) = 1000 毫秒(ms) = 1,000,000 微秒(μs) = 1,000,000,000 納秒(ns) = 1,000,000,000,000 皮秒(ps)
標頭檔案: #include <windows.h> // 在VC中使用帶上標頭檔案
#include <unistd.h> // 在gcc編譯器中,使用的標頭檔案因gcc版本的不同而不同
功 能: 執行掛起指定的秒數
語 法: unsigned sleep(unsigned seconds);
示例:
#include <windows.h>
#include<stdio.h>
int main()
{
int a;
a=1;
printf("hello");
sleep(a); /* VC 使用Sleep*/
printf("world");
return 0;
}
函式名: usleep
標頭檔案: #include <unistd.h>
功 能: usleep功能把程式掛起一段時間, 單位是微秒(百萬分之一秒);
語 法: void usleep(int micro_seconds);
返回值: 無
內容說明:本函式可暫時使程式停止執行。引數 micro_seconds 為要暫停的微秒數(us)。
注 意:
這個函式不能工作在windows 作業系統中。用在Linux的測試環境下面。
參 見:usleep() 與sleep()類似,用於延遲掛起程式。程式被掛起放到reday queue。
是一般情況下,延遲時間數量級是秒的時候,儘可能使用sleep()函式。
如果延遲時間為幾十毫秒(1ms = 1000us),或者更小,儘可能使用usleep()函式。這樣才能最佳的利用CPU時間
時鐘換算:
微秒,時間單位,符號us(英語:microsecond ).
1微秒等於百萬分之一秒(10的負6 次方秒)
0.000 001 微秒 = 1皮秒
0.001 微秒 = 1納秒
1,000 微秒 = 1毫秒
1,000,000 微秒 = 1秒
1s = 1000ms
1ms = 1000μs
1μs = 1000ns
1ns = 1000ps
1秒(s) = 1000 毫秒(ms) = 1,000,000 微秒(μs) = 1,000,000,000 納秒(ns) = 1,000,000,000,000 皮秒(ps)
相關文章
- Linux中的sleep、usleep、nanosleep、poll和selectLinuxNaN
- java yield()和sleep()的區別Java
- Linux作業系統 sleep(0)、sleep(1)和sleep(-1)的區別,他們各有什麼作用Linux作業系統
- 執行緒狀態&&Wait和sleep的區別?執行緒AI
- 【Java】sleep和wait區別總結JavaAI
- Linux中Sleep和Wait命令的使用方式LinuxAI
- Java_Thread類的sleep()與SystemClock類的sleep()的區別Javathread
- 使用jquery和使用框架的區別jQuery框架
- 請教sleep()與yield()的區別
- windows執行緒yield以及Sleep(0)和SwitchToThread之間的區別Windows執行緒thread
- npm 和 yarn 的使用區別NPMYarn
- ../和./和/的區別
- 使用框架和不使用框架的區別框架
- linux和windows系統的區別LinuxWindows
- Linux 命令 su 和 sudo 的區別Linux
- YII 的 with 與 joinwith 的區別和使用
- new 和 malloc 的區別 及使用
- 和 的區別
- as 和 with的區別
- iOS中 Debug 和 Release 的區別和使用iOS
- LinkedList和ArrayList的區別、Vector和ArrayList的區別
- http和https的區別/get和post的區別HTTP
- sleep與 wait區別AI
- Linux時間的cst和edt的區別Linux
- Android核心和Linux核心的區別AndroidLinux
- 5個macOS 和 Linux的主要區別MacLinux
- 程式和執行緒的區別(Linux)執行緒Linux
- Linux和Ubuntu的區別與聯絡LinuxUbuntu
- Linux su命令和sudo命令的區別Linux
- Linux prerouting和postrouting的區別Linux
- Linux和DOS的FORMAT命令區別(轉)LinuxORM
- FTP 中ascii 和bin 的區別和使用方法FTPASCII
- localStorage,sessionStorage和cookie的區別及使用SessionCookie
- su和sudo的區別與使用(轉)
- ./ 和sh 的區別
- JQuery this和$(this)的區別jQuery
- jquery $(this) 和this的區別jQuery
- T和?的區別