linux c--alarm函数

2021-03-08, updated 2021-09-12

设置固定时间发送SIGALRM信号。

1
2
3
#include <unistd.h>

unsigned int alarm(unsigned int seconds);

参数: seconds: 延时时间,单位秒

返回值:返回上一次调用alarm的时间,没有则返回0

说明

后执行的alarm会清除之前的alarm,seconds为0时会清空左右alarm

示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <unistd.h>
#include <signal.h>

void func(int num)
{
    printf("recv num:%d\n", num);
    if(num == SIGALRM)
        printf("signal sigalrm %lu\n", time(NULL));
}

int main()
{
    signal(SIGALRM, func);
    alert(3);
    
    while(1);
    return 0;
words: 159 tags: linux c