Linux下C编程:alarm
当前位置:以往代写 > C/C++ 教程 >Linux下C编程:alarm
2019-06-13

Linux下C编程:alarm

Linux下C编程:alarm

alarm()用来配置信号SIGALRM在颠末参数seconds指定的秒数后传送给今朝的历程。假如参数seconds 为0,则之前配置的闹钟会被打消,并将剩下的时间返回。信号正常发送时返回值为0。若新的报警配置在前一次设定尚未竣事时,发送,则返回前一次配置所剩时间。返回之前闹钟的剩余秒数,假如之前未设闹钟则返回0。

alarm()执行后,历程将继承执行,在后期(alarm今后)的执行进程中将会在seconds秒后收到信号SIGALRM并执行其处理惩罚函数。

利用alarm函数可以配置一个计时器,在未来某个指定的时间该计时器会超时。当计时器超时时,发生SIGALARM信号。假如不捕获或不忽略此信号,则其默认行动是终止挪用该alarm函数的历程。

每个历程只能有一个闹钟时钟,假如在挪用alarm时,已经为该历程配置过闹钟时钟,并且它还没有超时,则将该闹钟时钟的余留值作为本次alarm函数挪用的返回值。以前挂号的闹钟时钟将被新值取代。

假如有以前为历程挂号的尚未高出的闹钟时钟,并且本次挪用的seconds为0,则打消以前的闹钟时钟,其余留值仍作为alarm的返回值。

(以上这几段话摘自《unix情况高级编程》)

#include <stdio.h>     
#include <signal.h>     
#include <time.h>     
         
void func();     
void main()     
{     
     signal(SIGALRM,&func);
     alarm(4);
         
     while(1)
       pause();
         
}
         
void func()     
{     
     printf("getsigalrm!!\n");     
     alarm(1);     
}

Linux下C编程:alarm

查察全套文章:http://www.bianceng.cn/Programming/C/201212/34807.htm

    关键字:

在线提交作业