《UNIX环境高级编程》笔记--sigsuspend函数
来源:互联网 发布:乐清知临中学地址 编辑:程序博客网 时间:2024/06/06 00:18
原文地址:http://blog.csdn.net/todd911/article/details/17319591
- #include <stdio.h>
- #include <signal.h>
- static void sig_int(int);
- int main(void){
- sigset_t newmask,oldmask,waitmask;
- printf("program start.\n");
- if(signal(SIGUSR1, sig_int) == SIG_ERR){
- perror("signal");
- return -1;
- }
- if(signal(SIGUSR2, sig_int) == SIG_ERR){
- perror("signal");
- return -1;
- }
- sigemptyset(&waitmask);
- sigaddset(&waitmask, SIGUSR1);
- sigemptyset(&newmask);
- sigaddset(&newmask, SIGUSR2);
- if(sigprocmask(SIG_BLOCK, &newmask, &oldmask) < 0){
- perror("sigprocmask");
- return -1;
- }
- printf("in critical region.\n");
- sigsuspend(&waitmask);
- if(sigprocmask(SIG_SETMASK, &oldmask, NULL) < 0){
- perror("sigprocmask");
- return -1;
- }
- printf("program exit.\n");
- return 0;
- }
- static void sig_int(int signo){
- printf("int sig_int:%d.\n",signo);
- }
阅读全文
0 0
- 《UNIX环境高级编程》笔记--sigsuspend函数
- 《UNIX环境高级编程》笔记--sigsuspend函数
- 《UNIX环境高级编程》笔记--sigsuspend函数
- Unix环境高级编程(阅读笔记)----sigsuspend函数
- unix 环境高级编程之sigsuspend函数
- UNIX环境高级编程——sigqueue、sigsuspend函数
- 《unix高级环境编程》信号——sigsuspend 函数
- 《unix高级环境编程》信号——sigsuspend 函数
- 《UNIX环境高级编程》笔记--fcntl函数
- 《UNIX环境高级编程》笔记--access函数
- 《UNIX环境高级编程》笔记--umask函数
- 《UNIX环境高级编程》笔记--system函数
- 《UNIX环境高级编程》笔记--sigaction函数
- 《UNIX环境高级编程》笔记--chmod函数和fchmod函数
- 《 Unix环境高级编程 》笔记
- 《 Unix环境高级编程 》笔记
- 《 Unix环境高级编程 》笔记
- Unix环境高级编程 笔记
- 自定义surfaceview的步奏以及注意事项
- define与inline区别
- JSON中的{}与[]
- Static基本用法总结
- 改名字就找我咯
- 《UNIX环境高级编程》笔记--sigsuspend函数
- IDEA 下写出第一个 SSH 整合框架练手项目(二,整合SSH及登陆页面的完成)
- Android studio 3.0 引起的自定义打包文件名 outputFile sync failed
- OpenCV-边缘检测和图像金字塔
- itoa的实现
- 爬取当当网图书信息
- Qt如何弄出tab竖着写。
- 奔驰最新款车型插入OBDII接口后出现服务首先问题
- LoadRunner常用函数