![]() |
|||||||||||||||
信號(hào)捕捉函數(shù)alarm()和pause() |
|||||||||||||||
本文關(guān)鍵字: 信號(hào)捕捉函數(shù),alarm(),pause() alarm()也稱為鬧鐘函數(shù),它可以在進(jìn)程中設(shè)置一個(gè)定時(shí)器,當(dāng)定時(shí)器指定的時(shí)間到時(shí),它就向進(jìn)程發(fā)送SIGALARM信號(hào)。要注意的是,一個(gè)進(jìn)程只能有一個(gè)鬧鐘時(shí)間,如果在調(diào)用alarm()之前已設(shè)置過鬧鐘時(shí)間,則任何以前的鬧鐘時(shí)間都被新值所代替。 pause()函數(shù)用于將調(diào)用進(jìn)程掛起直至捕捉到信號(hào)為止。這個(gè)函數(shù)很常用,通常可以用于判斷信號(hào)是否已到。 表1列出了alarm()函數(shù)的語法要點(diǎn)。 表1 alarm()函數(shù)語法要點(diǎn)
表2列出了pause()函數(shù)的語法要點(diǎn)。 表2 pause()函數(shù)語法要點(diǎn)
以下實(shí)例實(shí)際上已完成了一個(gè)簡單的sleep()函數(shù)的功能,由于SIGALARM默認(rèn)的系統(tǒng)動(dòng)作為終止該進(jìn)程,因此程序在打印信息前就會(huì)被結(jié)束了,代碼如下: /* alarm_pause.c */ 本文選自華清遠(yuǎn)見嵌入式培訓(xùn)教材《從實(shí)踐中學(xué)嵌入式Linux應(yīng)用程序開發(fā)》 熱點(diǎn)鏈接:
1、信號(hào)發(fā)送函數(shù)kill()和raise() |