C語言中的pause()函數(shù)和alarm()函數(shù)以及sleep()函數(shù)
C語言pause()函數(shù):讓進(jìn)程暫停直到信號(hào)出現(xiàn)
頭文件:
#include <unistd.h>
定義函數(shù):
int pause(void);
函數(shù)說明:pause()會(huì)令目前的進(jìn)程暫停(進(jìn)入睡眠狀態(tài)), 直到被信號(hào)(signal)所中斷.
返回值:只返回-1.
錯(cuò)誤代碼:EINTR 有信號(hào)到達(dá)中斷了此函數(shù).
C語言alarm()函數(shù):設(shè)置信號(hào)傳送鬧鐘
頭文件:
#include <unistd.h>
定義函數(shù):
unsigned int alarm(unsigned int seconds);
函數(shù)說明:alarm()用來設(shè)置信號(hào)SIGALRM 在經(jīng)過參數(shù)seconds 指定的秒數(shù)后傳送給目前的進(jìn)程. 如果參數(shù)seconds 為0, 則之前設(shè)置的鬧鐘會(huì)被取消, 并將剩下的時(shí)間返回.
返回值:返回之前鬧鐘的剩余秒數(shù), 如果之前未設(shè)鬧鐘則返回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); } }
執(zhí)行:
sleep 1 ... sleep 2 ... sleep 3 ... sleep 4 ... sleep 5 ...hello sleep 6 ...
C語言sleep()函數(shù):讓進(jìn)程暫停執(zhí)行一段時(shí)間
頭文件:
#include <unistd.h>
定義函數(shù):
unsigned int sleep(unsigned int seconds);
函數(shù)說明:sleep()會(huì)令目前的進(jìn)程暫停, 直到達(dá)到參數(shù)seconds 所指定的時(shí)間, 或是被信號(hào)所中斷.
返回值:若進(jìn)程暫停到參數(shù)seconds 所指定的時(shí)間則返回0, 若有信號(hào)中斷則返回剩余秒數(shù).
相關(guān)文章
C語言中g(shù)etchar()函數(shù)的用法小結(jié)
這篇文章主要介紹了C語言中g(shù)etchar()函數(shù)的用法,getchar是輸入函數(shù),輸入的過程是什么呢,本文給大家詳細(xì)講解,對(duì)C語言getchar()函數(shù)相關(guān)知識(shí)感興趣的朋友一起看看吧2022-10-10VS2019中CMake項(xiàng)目如何指定c++語言標(biāo)準(zhǔn)
這篇文章主要介紹了VS2019中CMake項(xiàng)目如何指定c++語言標(biāo)準(zhǔn),需要的朋友可以參考下2020-02-02淺談C++中的string 類型占幾個(gè)字節(jié)
本篇文章小編并不是為大家講解string類型的用法,而是講解我個(gè)人比較好奇的問題,就是string 類型占幾個(gè)字節(jié)2013-08-08