10_12 sigddset sigdelset 和 sigismember 的实现
来源:互联网 发布:史记的地位 知乎 编辑:程序博客网 时间:2024/05/01 01:12
一、源代码:
cat -n 10_12.c
1 #include <signal.h>
2 #include <errno.h>
3
4 #define SIGBAD(signo) ((signo) <= 0 || (signo) > NSIG)
5
6 int sigaddset(sigset_t *set,int signo)
7 {
8 if (SIGBAD(signo)){
9 errno = EINVAL;
10 return -1;
11 }
12
13 *set |= (1 << (signo - 1));
14 return 0;
15 }
16
17
18 int sigdelset(sigset_t *set,int signo)
19 {
20 if (BADSIG(signo)){
21 errno = EINVAL;
22 return -1;
23 }
24
25 *set &= ~(1 << (signo -1));
26 return 0;
27 }
28
29
30 int sigismember(sigset_t *set,int signo)
31 {
32 if (SIGBAD(signo)){
33 errno = EINVAL;
34 return -1;
35 }
36
37 return (*set & (1 << (signo - 1)) != 0);
38 }
- 10_12 sigddset sigdelset 和 sigismember 的实现
- sigemptyset,sigfillset,sigaddset,sigdelset,sigismember,sigprocmask
- sigismemeber和sigdelset函数解析
- Android开发历程_12(Handler的使用)
- [寒江孤叶丶的Cocos2d-x之旅_12]浅谈Cocos2d-x中的内置粒子效果,和粒子的plist的导入
- 黑马程序员_线程同步和Timer定时器_12
- Android 学习 笔记_12. Spinner的简单实使用
- 伪码农的日志_12.2_软件工程过程模型
- 工作总结_12
- 信号:signal(), sigaction(), sigaddset(), sigemptyset(), sigismember(), sigprocmask()
- 使用STL的经验总结_指定关联容器的比较类型_12
- 下载jdk历史版本的方法,jdk1.5.0_12验证通过
- 服务器从jdk1.6.0升级到1.6.0_12的过程记录
- 下载jdk历史版本的方法,jdk1.5.0_12验证通过 .
- 《C++程序设计语言》5.9_12 统计在一个string里一对字母出现的次数
- 服务器从jdk1.6.0升级到1.6.0_12的过程记录
- 伪码农的日志_12.1_软件工程顶级期刊_系统设计
- 今日总结11_12
- 单级导航菜单的实现
- 这一段时间学习JAVA的回顾总结1
- NSBundle(获取资源路径方法)的相关使用方法和注意事项
- html多媒体标签
- 阿里巴巴的分布式应用框架-dubbo负载均衡策略--- 一致哈希算法
- 10_12 sigddset sigdelset 和 sigismember 的实现
- android学习笔记-模仿音乐音频频率
- RTSP客户端发送播放请求后,RTSP服务器调用流程
- App版本的更新
- 干货首发,可以清理,带动画的自定义控件CuteEditText
- Swift中的NSNumber
- MySQL存储过程
- Web开发人员应当知道的15个开源项目
- Android驱动开发