定時程序

首先介紹一下alarm函數

alarm也稱爲鬧鐘函數,它可以在進程中設置一個定時器,當定時器指定的時間到時,它向進程發送SIGALARM信號。要注意的是,一個進程只能有一個鬧鐘時間,如果在調用alarm之前已設置過鬧鐘時間,則任何以前的鬧鐘時間都被新值所代替。

所需頭文件

#include <unistd.h>

函數原型

unsigned int alarm(unsigned int seconds)

函數參數

seconds:指定秒數

函數返回值

成功:如果調用此alarm()前,進程已經設置了鬧鐘時間,則返回上一個鬧鐘時間的剩餘時間,否則返回0.

出錯:-1

 

再介紹一下signal函數

所需頭文件: #include <signal.h>

功能:設置某一信號的對應動作

定義函數:void (*signal(int signum,void(*handler)(int)))(int);

或者: typedef void(*sig_t)(int);

sig_t signal(int signum,sig_t handler);

函數說明:signal()會依參數signum指定的信號編號來設置該信號的處理函數。當指定的信號到達時就會跳轉到參數handler指定的函數執行。

如果參數handler不是函數指針,則必須是下列兩個常數之一:

  SIG_IGN 忽略參數signum指定的信號。

  SIG_DFL 將參數signum 指定的信號重設爲核心預設的信號處理方

  式。

  詳細信號,查看unix信號編號

返回值 返回先前的信號處理函數指針,如果有錯誤則返回SIG_ERR(-1)。

 

下面就是一個自己寫的小程序:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章