分库查询 Apache Pivot教程 Kotlin sqlite safari jquery绑定click事件 xcode打包 matlab不等于 python界面 python自学教程 python使用正则表达式 java正则表达 怎么安装java环境 linux格式化命令 心理学与生活下载 一键刷入recovery 内存整理软件 groupby 电子书制作软件 fireworks8 js包含字符串 暴力猴插件 ps调整边缘抠头发丝 windowsjs延时函数 网红照片男 mix2s拆机 php随机数函数 网页自动点击 批处理for 通灵学院在哪 omg小北 qq空间自动点赞 趣学python编程 点状字体 街机roms下载 迅捷屏幕录像工具 音乐制作器 origin柱状图 pr时间轴不见了 ai投影
当前位置: 首页 > 学习教程  > 编程语言

linux 信号【3】信号集和信号集函数

2020/8/11 19:07:04 文章标签:

文章目录

  • 信号集
  • 信号集初始化
  • 信号集的变更
  • 信号集测试
  • sigprocmask函数
  • sigpending函数

信号集

数据类型s i g s e t _ t ,一个信号集,表示多个信号的集合

#include <signal.h>

信号集初始化

int sigemptyset(sigset_t * s e t) ;
初始化由s e t指向的信号集,使排除其中所有信号

int sigfillset(sigset_t * s e t) ;
函数 s i g f i l l s e t初始化由s e t指向的信号集,使其包括所有信号

所有应用程序在使用信号集前,要对该信号集调用
s i g e m p t y s e t或s i g f i l l s e t一次。这是因为C编译程序将不赋初值的外部和静态度量都初始化为 0

信号集的变更

int sigaddset(sigset_t * s e t, int s i g n o) ;
int sigdelset(sigset_t * s e t, int s i g n o) ;所有应用程序在使用信号集前,要对该信号集调用
s i g e m p t y s e t或s i g f i l l s e t一次。这是因为C编译程序将不赋初值的外部和静态度量都初始化为 0

以上 四个函数返回:若成功则为0,若出错则为- 1

信号集测试

int sigismember(const sigset_t * s e t, int s i g n o)
s i g i s m e m b e r测试一指定位。因
为没有信号编号值为0

返回:若真则为1,若假则为0

sigprocmask函数

一个进程的信号屏蔽字规定了当前阻塞而不能递送给该进程的信号集.
函数s i g p r o c m a s k可以检测或更改(或两者)进程的信号屏蔽字
int sigprocmask(int h o w, const sigset_t * s e t, sigset_t * o s e t) ;
返回:若成功则为0,若出错则为- 1
o s e t是非空指针,进程的当前信号屏蔽字通过 o s e t返回。
其次,若s e t是一个非空指针,则参数h o w指示如何修改当前信号屏蔽字。
如果s e t是个空指针,则不改变该进程的信号屏蔽字,h o w的值也无意义。
如果在调用s i g p r o c m a s k后有任何未决的、不再阻塞的信号,则在 s i g p r o c m a s k返回前,至
少将其中之一递送给该进程
下表说明了h o w可选用的值。S I G _ B L O C K是或操
作,而S I G _ S E T M A S K则是赋值操作。

how 说明
S I G _ B L O C K 该进程新的信号屏蔽字是其当前信号屏蔽字和 s e t指向信号集的并集。s e t包含了我们希望阻塞的附加信号
S I G _ U N B L O C K 该进程新的信号屏蔽字是其当前信号屏蔽字和 s e t所指向信号集的交集。 s e t包含了我们希望解除阻塞的信号
S I G _ S E T M A S K 该进程新的信号屏蔽是s e t指向的值

sigpending函数

s i g p e n d i n g返回对于调用进程被阻塞不能递送和当前未决的信号集。该信号集通过 s e t参数
返回。
#include <signal.h>
int sigpending(sigset_t * s e t) ;
返回:若成功则为0,若出错则为- 1


本文链接: http://www.dtmao.cc/news_show_100072.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?