Linux多进程:alarm函数设置定时器

2023-10-27

/*


    unsigned int alarm(unsigned int seconds);
    功能:设置定时器,倒计时结束后给当前进程发送SIGALARM信号

    seconds:倒计时秒数,为0则定时器无效
    取消一个定时器:通过alarm(0);

    SIGALARM:终止当前的进程,每一个进程仅只能有一个的定时器,重复声明会覆盖

    返回值:
        之前没有定时器:返回0
        之前有定时器:返回前一个定时器剩余的秒数
    

    alarm不阻塞
    定时器与进程状态无关,无论什么状态都在计时
    
*/

#include <sys/types.h>
#include <signal.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdlib.h>

int main() {
    int ret = alarm(5);
    printf("seconds = %d\n", ret);//0

    sleep(2);
    ret = alarm(5);
    printf("seconds = %d\n", ret);//3

    while (1)
    {
    }
    
    return 0;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux多进程:alarm函数设置定时器 的相关文章

随机推荐

  • jQuery:hasClass() 方法检查被选元素是否包含指定的 class;after()在某元素之后插入新元素

    Html代码1 div class PL20 style display div
  • layui 表格中实现照片预览,点击查看原图

    人员表格中实现照片预览 并且可点击放大 查看原图 table class layui hide table js 定义列 var cols type radio width 60 type numbers width 50 field or
  • Python练习-求两个给定正整数的最大公约数和最小公倍数

    题目描述 求两个给定正整数的最大公约数和最小公倍数 题目要求 输入格式 输入在两行中分别输入正整数x和y 输出格式 在一行中输出最大公约数和最小公倍数的值 例如 输入100 1520 输出20 7600 题目解析 1 几个整数中公有的约数
  • Canal快速入门

    Canal 一 Canal 入门 1 1 什么是 Canal 阿里巴巴 B2B 公司 因为业务的特性 卖家主要集中在国内 买家主要集中在国外 所以衍生出了同步杭州和美国异地机房的需求 从 2010 年开始 阿里系公司开始逐步的尝试基于数据库
  • kettle处理大数据量表-分页抽取数据

    概述 总job 分三步 第一 先清空目标表 第二 根据源表总的数据行 结合服务器配置 kettle每次能抽取插入多少行 算出需要分n次抽取 并生成1到n的序列值列表 ps 生成1 2 3 n 的数据列 然后把每个值赋值给变量var page
  • 5.吴恩达机器学习作业-支持向量机

    1 SVM原理 SVM算法的本质就是最大化离超平面最近点 支持向量 到该平面的距离 如图所示 以二分类为例 转化为数学问题就是 m a x w b
  • c++学习之类模板

    类模板的语法 建立一个通用类 类中的成员数据类型可以不具体指定 用一个虚拟的类型来代表 语法 template 示例 include
  • STM32-土壤湿度传感器

    目录 0 说明 1 传感器介绍 2 代码说明 2 1 ADC初始化函数 adc c 2 2 GPIO初始化函数 2 3 主函数 0 说明 本篇文章主要是说明怎么使用STM32单片机读取土壤湿度传感器采集到的数据 包括模拟和数字数据 并且附带
  • Interview preparation -- spring cloud seata

    分布式事务 事物ACID特性 A Atomic 原子性 构成事物的所有操作 要么全部成功 要么全部失败 不存在部分成功或失败情况 C Conststency 一致性 在事物完成时候 所有数据必须保持一致 I Isolation 隔离性 并发
  • STM32F1定时器中断

    STM32F1的通用定时器包括 TIM2 TIM3 TIM4和TIM5 掌握主要的通用定时器的寄存器 控制寄存器1 TIMx CR1 DMA 中断使能寄存器 TIMx DIER 预分频寄存器 TIMx PSC 它的作用是对时钟进行分频 然后
  • 如何获取小程序全局里面的app.js的方法

    app js的内容 app js App 以下是小程序主体生命周期函数 生命周期函数指的是在某一时刻会自动执行的函数 在小程序启动的时候 自动执行的函数 onLaunch options console log onLaunch optio
  • Python 进程、线程、协程

    进程和线程 在爬虫开发中 进程和线程的概念非常重要的 提高爬虫的工作效率 打造分布式爬虫 都离不开进程和线程的身影 本节将从多进程 多线程 协程三个方面 帮组大家回顾 Python 语言中进程和线程的常用操作 以便在接下来的爬虫开发中灵活运
  • 弱监督目标检测与半监督目标检测

    一 监督学习分类 根据数据集的标注情况 分为 监督学习 弱监督学习 弱半监督学习和半监督学习 监督学习 数据集为带实例级标注的标签 包含坐标和类别信息 弱监督学习 数据集仅带有数据类别的标签 不包含坐标信息 弱半监督学习 数据集中包含少量实
  • Lyapunov稳定性理论

    系统稳定性一般有系统状态的稳定性和关于平衡点的稳定性两种定义形式 对线性系统而言 系统状态稳定性和平衡点稳定性是完全等价的 但是对于非线性系统而言 二者具有完全不同的含义 所谓平衡点稳定性是指系统在受到外扰动作用下 轻微偏离平衡点后 是否具
  • 爬虫浅析及实例操作

    一 什么是爬虫呢 网络爬虫 又被称为网页支柱 网络机器人 是一种按照一定的规则 自动的抓取万维网信息的程序 可以理解为模拟客户端发送网络请求 接受请求对应的响应 二 爬虫有哪些分类 根据使用场景 网络爬虫可分为 通用爬虫 General P
  • Python爬取数据分析

    一 python爬虫使用的模块 1 import requests 2 from bs4 import BeautifulSoup 3 pandas 数据分析高级接口模块 二 爬取数据在第一个请求中时 使用BeautifulSoup imp
  • ThreeJS中的相机

    在ThreeJS中一共有三个关于相机的JS文件 Camera js OrthographicCamera js PerspectiveCamera js 分别是普通的相机 正交 正投影的相机 第三人称相机 首先是普通的相机 Camera j
  • 【如何应对学习Java中遇到的框架乱七八糟的问题?】

    关于您对Java学习的困惑 如果您感觉学习过程中遇到了难题 不要担心 这是正常的学习过程 以下是一些建议来帮助您处理 继续深入学习 Java是一个非常庞大的编程语言 学习过程中可能存在一定的困难 但是请坚持下去 找到适合您的学习资源 包括书
  • Java基础-学习笔记(二)

    2015年最后一天 Java基础 学习笔记 一 中简要介绍了一下Java 从本节开始将较详细记录Java的知识点 1 JDK的目录结构 src zip 核心API所有类的源文件 include 编写JNDI等程序需要的C语言头文件 bin
  • Linux多进程:alarm函数设置定时器

    unsigned int alarm unsigned int seconds 功能 设置定时器 倒计时结束后给当前进程发送SIGALARM信号 seconds 倒计时秒数 为0则定时器无效 取消一个定时器 通过alarm 0 SIGALA