勇敢心资源网

当前位置:首页 > 百科 / 正文

alarm(闹钟函式)

(2020-01-11 11:34:53) 百科
alarm(闹钟函式)

alarm(闹钟函式)

alarm也称为闹钟函式,它可以在进程中设定一个定时器,当定时器指定的时间到时,它向进程传送SIGALRM信号。可以设定忽略或者不捕获此信号,如果採用默认方式其动作是终止调用该alarm函式的进程。

基本介绍

  • 中文名:闹钟函式
  • 外文名:alarm
  • 特点:进程传送SIGALRM信号
  • 特色:终止调用该alarm

Linux C

alarm函式
要注意的是,一个进程只能有一个闹钟时间,如果在调用alarm之前已设定过闹钟时间,则任何以前的闹钟时间都被新值所代替。需要注意的是,经过指定的秒数后,信号由核心产生,由于进程调度的延迟,所以进程得到控制从而能够处理该信号还需要一些时间。
如果有以前为进程登记的尚未逾时的闹钟时钟,而且本次调用的seconds值是0,则取消以前的闹钟时钟,其余留值仍作为alarm函式的返回值。

所需头档案

#include<unistd.h>

函式原型

unsigned int alarm(unsigned int seconds);

函式参数

seconds:指定秒数

函式返回值

成功:如果调用此alarm()前,进程已经设定了闹钟时间,则返回上一个闹钟时间的剩余时间,否则返回0。
出错:-1

程式示例

该示例完成了一个简单的sleep函式的功能,由于SIGALRM默认的系统动作为终止该进程,因此在程式调用pause之后,程式就终止了。
#include<unistd.h>
#include<stdio.h>
#include<stdlib.h>
int main(void){
alarm(50);
int ret;
sleep(30);
ret=alarm(10);
printf("%d\n",ret);
pause();
return 0;
}
程式输出:
先等待30秒 再输出20 等待10秒列印出闹钟
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net
搜索
随机推荐

勇敢心资源网|豫ICP备19027550号