这篇文章将讲述别一种进程间通信的机制——信号量。注意请不要把它与之前所说的信号混淆起来,信号与信号量是不同的两种事物。有关信号的更多内容,可以阅读我的另一篇文章:Linux进程间通信 – 信号。下面就进入信号量的讲解。
进程间通信2 有名管道 mkfifo、open、read、close
在前一篇文章—— Linux进程间通信 – 使用匿名管道 中,我们看到了如何使用匿名管道来在进程之间传递数据,同时也看到了这个方式的一个缺陷,就是这些进程都由一个共同的祖先进程启动,这给我们在不相关的的进程之间交换数据带来了不方便。这里将会介绍进程的另一种通信方式——命名管道,来解决不相关进程间的通信问题。
进程间通信2 匿名管道 popen、pclose、pipe、close、dup、dup2
在前面,介绍了一种进程间的通信方式:使用信号,我们创建通知事件,并通过它引起响应,但传递的信息只是一个信号值。这里将介绍另一种进程间通信的方式——匿名管道,通过它进程间可以交换更多有用的数据。
进程间通信1 信号 signal、sigaction
一、什么是信号
用过Windows的我们都知道,当我们无法正常结束一个程序时,可以用任务管理器强制结束这个进程,但这其实是怎么实现的呢?同样的功能在Linux上是通过生成信号和捕获信号来实现的,运行中的进程捕获到这个信号然后作出一定的操作并最终被终止。
进程间通信1 信号之信号集函数 sigemptyset()、sigprocmask()、sigpending()、sigsuspend()
我们已经知道,我们可以通过信号来终止进程,也可以通过信号来在进程间进行通信,程序也可以通过指定信号的关联处理函数来改变信号的默认处理方式,也可以屏蔽某些信号,使其不能传递给进程。那么我们应该如何设定我们需要处理的信号,我们不需要处理哪些信号等问题呢?信号集函数就是帮助我们解决这些问题的。
天府公园
基础信息
- 适合支个天幕和朋友聊聊天
- 公园内环境,树木,小河都不错
- 公交不便利,推荐自驾
- 儿童乐园比较小,如果要带小孩玩耍不如红石公园
现场相片
新津抓螃蟹
基础信息
- 周围的环境为:小河+农田
- 适合带娃下河体验 summer
- 公交不便,需要自驾
- 下河最好穿下河的鞋
规划24
总目标
- 锻炼身体
- 培养优秀的行为习惯
- 培养优秀的饮食习惯
- 培养优秀的睡眠习惯
- 培养持续学习的习惯
- 其它
行为习惯
-
培养冷静、复盘的性格
-
事前确定
- 动机、投入、核心目标
-
事后
- 复盘
饮食习惯
-
按时、按量就餐