校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > linux中alarm函數的實例講解

linux中alarm函數的實例講解

熱門標簽:百度地圖標注要不要錢 東莞人工智能電銷機器人供應商 廣州電銷機器人系統圖 高德地圖標注無營業執照 長沙開福怎么申請400電話 金融行業外呼線路 賀州市地圖標注app 智能電話機器人線路 江蘇電銷外呼防封系統是什么

linux alarm函數簡介

上代碼:

#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <signal.h>
int main(int argc, char *argv[]) 
{ 
 alarm(5);
 sleep(20); 
 printf("end!\n"); 
 return 0; 
}

運行5秒后,內核向進程發出SIGALRM信息,進程被終止,所以上述程序的結果是:

Alarm clock

當然,我們也可以人為定義信號處理函數,如下:

#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <signal.h>
void sig_alarm(int sig) 
{ 
 printf("sig is %d, sig_alarm is called\n", sig);
}
int main(int argc, char *argv[]) 
{ 
 signal(SIGALRM, sig_alarm); // 注冊alarm信號對應的函數 
 alarm(5); // 5秒后,內核向進程發出alarm信號, 執行對應的信號注冊函數
 sleep(20); 
 printf("end!\n"); 
 return 0; 
}

結果:

sig is 14, sig_alarm is called
end!

可以看到,內核向應用進程發出SIGALRM信號,執行對應的注冊函數,而非殺死進程。

很簡單,先說這么多。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接

標簽:張家界 北京 洛陽 玉樹 松原 永州 廊坊 滄州

巨人網絡通訊聲明:本文標題《linux中alarm函數的實例講解》,本文關鍵詞  linux,中,alarm,函數,的,實例,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《linux中alarm函數的實例講解》相關的同類信息!
  • 本頁收集關于linux中alarm函數的實例講解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 海口市| 金沙县| 广宗县| 许昌县| 永寿县| 白银市| 油尖旺区| 嘉善县| 江达县| 历史| 邓州市| 和林格尔县| 隆昌县| 海原县| 栾城县| 仁化县| 台山市| 建宁县| 易门县| 金坛市| 平江县| 灵寿县| 开封县| 广灵县| 四平市| 平武县| 冀州市| 井冈山市| 平和县| 丹寨县| 丹巴县| 北票市| 德阳市| 大方县| 凌海市| 东阿县| 丰城市| 玉溪市| 内江市| 通河县| 南召县|