C語言pause()函數:讓進程暫停直到信號出現
頭文件:
#include <unistd.h>
定義函數:
int pause(void);
函數說明:pause()會令目前的進程暫停(進入睡眠狀態), 直到被信號(signal)所中斷.
返回值:只返回-1.
錯誤代碼:EINTR 有信號到達中斷了此函數.
C語言alarm()函數:設置信號傳送鬧鐘
頭文件:
#include <unistd.h>
定義函數:
unsigned int alarm(unsigned int seconds);
函數說明:alarm()用來設置信號SIGALRM 在經過參數seconds 指定的秒數后傳送給目前的進程. 如果參數seconds 為0, 則之前設置的鬧鐘會被取消, 并將剩下的時間返回.
返回值:返回之前鬧鐘的剩余秒數, 如果之前未設鬧鐘則返回0.
范例
#include <unistd.h>#include <signal.h>void handler(){ printf("hello/n");}main(){ int i; signal(SIGALRM, handler); alarm(5); for(i = 1; i < 7; i++) { printf("sleep %d .../n", i); sleep(1); }}
執行:
sleep 1 ...sleep 2 ...sleep 3 ...sleep 4 ...sleep 5 ...hellosleep 6 ...
C語言sleep()函數:讓進程暫停執行一段時間
頭文件:
#include <unistd.h>
定義函數:
unsigned int sleep(unsigned int seconds);
函數說明:sleep()會令目前的進程暫停, 直到達到參數seconds 所指定的時間, 或是被信號所中斷.
返回值:若進程暫停到參數seconds 所指定的時間則返回0, 若有信號中斷則返回剩余秒數.
新聞熱點
疑難解答
圖片精選