linux的基础知识——全局变量异步I/O
生活随笔
收集整理的這篇文章主要介紹了
linux的基础知识——全局变量异步I/O
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1.父子進程間的通信舉例
1.父子進程間的通信舉例
#include<stdio.h> #include<signal.h> #include<unistd.h> #include<stdlib.h>int n=0,flag=0;void sys_err(char *str) {perror(str);exit(1); }void do_sig_child(int num) {printf("i am child %d\t%d\n",getpid(),n);n +=2;flag = 1;sleep(1); }void do_sig_parent(int num) {printf("i am parent %d\t%d\n",getpid(),n);n +=2;flag = 1;sleep(1); }int main() {pid_t pid;struct sigaction act;if((pid=fork())<0){sys_err("fork");}else if(pid>0){n=1;sleep(1);act.sa_handler = do_sig_parent;sigemptyset(&act.sa_mask);act.sa_flags = 0;sigaction(SIGUSR2,&act,NULL);do_sig_parent(0);while(1){if(flag==1){kill(pid,SIGUSR1);flag=0;}}}else if(pid==0){n=2;act.sa_handler = do_sig_child;sigemptyset(&act.sa_mask);act.sa_flags=0;sigaction(SIGUSR1,&act,NULL);while(1){if(flag==1){kill(getppid(),SIGUSR2);flag=0;}}}return 0; }總結
以上是生活随笔為你收集整理的linux的基础知识——全局变量异步I/O的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 牛客15324 用来作弊的药水
- 下一篇: 操作系统 —— 文件管理