C语言中查询进程信号是否被遮罩或搁置的简单方法

 更新时间:2015年09月02日 12:14:37   投稿:goldensun  
这篇文章主要介绍了C语言中查询进程信号是否被遮罩或搁置的简单方法,包括sigprocmask函数和sigpending函数的简介,需要的朋友可以参考下

C语言sigprocmask()函数:查询或设置信号遮罩
头文件:

#include <signal.h>

定义函数:

int sigprocmask(int how, const sigset_t *set, sigset_t * oldset);

函数说明:sigprocmask()可以用来改变目前的信号遮罩, 其操作依参数how 来决定:
1、SIG_BLOCK 新的信号遮罩由目前的信号遮罩和参数set 指定的信号遮罩作联集
2、SIG_UNBLOCK 将目前的信号遮罩删除掉参数set 指定的信号遮罩
3、SIG_SETMASK 将目前的信号遮罩设成参数set 指定的信号遮罩. 如果参数oldset 不是NULL 指针, 那么目前的信号遮罩会由此指针返回.

返回值:执行成功则返回0, 如果有错误则返回-1.

错误代码:
1、EFAULT 参数set, oldset 指针地址无法存取.
2、EINTR 此调用被中断。

C语言sigpending()函数:查询被搁置的信号
头文件:

#include <signal.h>

定义函数:

int sigpending(sigset_t *set);

函数说明:sigpending()会将被搁置的信号集合由参数set 指针返回. 返回值执行成功则返回 0, 如果有错误则返回-1.

错误代码:
1、EFAULT 参数set 指针地址无法存取
2、EINTR 此调用被中断.

相关文章

  • Clion配置C语言环境的步骤详解

    Clion配置C语言环境的步骤详解

    这篇文章主要介绍了Clion配置C语言环境的步骤详解,本文分步骤通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • 基于QT制作一个TCPServer与TCPClient的通信

    基于QT制作一个TCPServer与TCPClient的通信

    这篇文章主要为大家详细介绍了如何基于QT制作一个TCPServer与TCPClient的通信,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-12-12
  • Qt 自定义分页控件的实现

    Qt 自定义分页控件的实现

    在应用程序开发时经常会遇到数据分页的需求,每一页展示特定数量的数据,通过点击按钮翻页或者输入页码跳转到指定页,本文就来介绍一下Qt 自定义分页控件的实现,感兴趣的可以了解一下
    2023-11-11
  • C++11中条件标量和互斥锁应用出现死锁问题

    C++11中条件标量和互斥锁应用出现死锁问题

    这篇文章主要介绍了C++11中条件标量和互斥锁应用出现死锁思考,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • 详细理解函C语言的函数栈帧

    详细理解函C语言的函数栈帧

    这篇文章主要为大家介绍了C语言的函数栈帧,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助,希望能够给你带来帮助
    2021-11-11
  • QT实现二、八、十六进制之间的转换

    QT实现二、八、十六进制之间的转换

    本文主要介绍了QT实现二、八、十六进制之间的转换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • C语言项目爬楼梯的两种实现方法参考

    C语言项目爬楼梯的两种实现方法参考

    今天小编就为大家分享一篇关于C语言项目爬楼梯的两种实现方法参考,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • C/C++实现动态数组的示例详解

    C/C++实现动态数组的示例详解

    动态数组相比于静态数组具有更大的灵活性,因为其大小可以在运行时根据程序的需要动态地进行分配和调整,本文为大家介绍了C++实现动态数组的方法,需要的可以参考下
    2023-08-08
  • C语言植物大战数据结构二叉树递归

    C语言植物大战数据结构二叉树递归

    这篇文章主要为大家介绍了C语言植物大战数据结构二叉树递归,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • C++实现LeetCode(159.最多有两个不同字符的最长子串)

    C++实现LeetCode(159.最多有两个不同字符的最长子串)

    这篇文章主要介绍了C++实现LeetCode(159.最多有两个不同字符的最长子串),本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-07-07

最新评论