1.管道,pipe()函数 实现最简单,实际为内核缓冲区的环形队列。 用于父子、兄弟等有血缘关系的进程间通信。 单向流动性,只能从管道读端读取,写端写入。 int fds[2]; pipe(fds);//传出参数,fd[0]为读端描述符,类似于stdin;fd[1]为写端描述符,类似于stdout ... ...
分类:
系统相关 时间:
2019-11-19 01:15:36
阅读次数:
115
1.为什么要用环形队列? 2.数组模拟环形队列 3.代码实现 ...
分类:
编程语言 时间:
2019-10-28 10:34:00
阅读次数:
70
实现思路 1,调整front指向队列的第一个元素,front初始值=0 2,调整rear指向队列的最后一个元素的后一个位置,希望空出一个空间作为约定,rear的初始值=0 3,队满,条件: (rear+1) % maxSize = front ,则队满,队列最多可存 maxSize-1个数 4,队空 ...
分类:
其他好文 时间:
2019-09-15 15:24:27
阅读次数:
80
先说一下有名管道和无名管道用的函数: 无名管道使用的是 pipe() 有名管道使用的是fifo() 无名管道主要用于有血缘关系的两个进程间通信,是内核使用环形队列机制实现,借助内核缓冲区实现的。 有名管道主要用于两个不相干的进程间通信,我认为之所以叫有名管道是因为他们借助mkfifo()函数创建的伪 ...
分类:
其他好文 时间:
2019-09-05 21:42:11
阅读次数:
161
一、实现原理如下图所示 环形队列实现需注意以下四点(本质上是和“3、一个简单队列的实现”一样的):(1)往队列中写数据 memcpy(&g_tQue[g_iWritePos],pNode,sizeof(T_QUEUE)); g_iWritePos = (g_iWritePos + 1) % QUEU ...
分类:
编程语言 时间:
2019-08-10 19:18:05
阅读次数:
90
一、引言 管道作用于有血缘关系的进程间的通信,完成数据传递。实际为内核使用环形队列机制,借助内核缓冲区(4k)实现。有如下特质: 1) 其本质是一个伪文件(实为内核缓冲区) 2) 由两个文件描述符引用,一个表示读端,一个表示写端。可定义一个文件描述符数组,存取。 3) 规定数据从管道的写端流入管道, ...
分类:
系统相关 时间:
2019-01-08 12:21:44
阅读次数:
195
队列的常见两种形式,普通队列和环形队列: 普通队列 环形队列: 在计算机中,每个信息都是存储在存储单元中的,比喻一下吧,上图的一些小正方形格子就是一个个存储单元,你可以理解为常见的数组,存放我们一个个的信息。 当有大量数据的时候,我们不能存储所有的数据,那么计算机处理数据的时候,只能先处理先来的,那 ...
分类:
其他好文 时间:
2018-12-23 22:07:37
阅读次数:
159
串口发送部分代码: 串口接收部分代码: 例程: http://www.openedv.com/forum.php?mod=attachment&aid=Njg0MnxmMzFkMzdmN3wxNTQ1MDQ0NjE5fDB8MzM2MTE%3D ...
分类:
其他好文 时间:
2018-12-17 20:12:16
阅读次数:
194
消息总线架构 什么时候使用MQ:跨进程通信传递消息;解耦;如果调用方实时依赖执行结果就不适用;加入MQ系统更复杂,传递路径更长,消息不丢不重难以同时保证 数据驱动的任务依赖:cron人工排执行时间表:这个似不似有点傻; 用MQ,step1完了发个消息说完了,task2订阅收到step1完了就开始,以 ...
分类:
其他好文 时间:
2018-11-28 17:27:12
阅读次数:
194
https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=69 有n个人向内排成一圈,从一个位置开始逆时针数k个,第k个出队,从一个位置开始顺时针数m个,第m个出队, ...
分类:
其他好文 时间:
2018-11-13 14:26:00
阅读次数:
237