当前位置: 首页 > news >正文

山东省建设文化传媒有限公司网站网络舆情分析师证书

山东省建设文化传媒有限公司网站,网络舆情分析师证书,网站建设投标书范本,域名购买是什么意思项目场景#xff1a; 须熟知文件管理和进程方面的基础知识 通过Xshell和VScode 相互进行远程开发#xff0c;学习进程间通信的其中一种方式——管道。 问题描述 依照我们曾经所学的知识#xff0c;我们仅仅只能在单个进程中进行数据的交互#xff0c;但是在实际应用中 须熟知文件管理和进程方面的基础知识 通过Xshell和VScode 相互进行远程开发学习进程间通信的其中一种方式——管道。 问题描述 依照我们曾经所学的知识我们仅仅只能在单个进程中进行数据的交互但是在实际应用中单个进程不说不能实现一个产品的全部功能但是会十分糅杂且出现问题很难定位。 而我们从以往学习的知识中我们了解到进程之间是十分具有独立性的例如父子进程各自修改重叠数据会有写实拷贝所以我们如果要进行进程间通信其实成本是较为巨大的但是又是尤为重要。 那么对于以后的开发我们就要学会多进程乃至多线程通信交互而今天我们来学习多进程间通信的第一种方式——管道。 什么是管道 管道是原生Linux系统提供的一个进程间通信的方式一般使用于父子进程当中 管道的原理就是父子进程打开同一块文件我们称这个文件叫做管道。因为父子进程由于进程的独立性基本上从数据方面可以说是互不干扰那么就可以由操作系统帮我们打开一个文件让父子进程同时看到一块同样的管道文件区域再通过这个管道文件实现通信。 需要注意的是管道是单向的且不止可以仅连接两个进程可以连接多个进程。 分析 pipe管道 int pipefd[2] {0}; int ret pipe(pipefd); 首先我们来看pipe函数的参数pipefd是一个空间为2的int数组如果我们在一些编程题网站做过题目就应该知道“输出型参数”而这里的pipefd就是充当输出型参数。 输出型参数将需要从函数内部运行过程中的数据通过输出型参数来获取出来比如说一个函数可以有返回值但是我们如果需要从一个函数获取不止一个变量的数据甚至不同类型的数据那么输出型参数就可以帮我们解决这个问题。 例如这里的pipe函数我们需要将管道函数帮我们打开的管道通信文件的fd获取这样我们才可以进行通信 这里的pipefd[0]是代表着管道的读端pipefd[1]代表着管道的写端 返回值代表是否成功创建一个管道如果返回值为-1则管道创建失败。 使用代码 #includeiostream #includeunordered_map #includesys/types.h #includesys/unistd.h #includesys/wait.h #includeassert.h #includestdio.h #includeunistd.h #includestring.h using namespace std; int main() {int pipefd[2] {0}; //pipefd[0] 读端 pipefd[1] 写端int ret pipe(pipefd);assert(ret ! -1);#ifdef DEBUGcout pipefd[0]: pipefd[0] endl;cout pipefd[1]: pipefd[1] endl;#endifint fd fork();assert(fd ! -1);if(fd 0){//父进程 进行读操作//1.关闭写的fdclose(pipefd[1]);//开辟缓冲区char buffer_read[1024*8];//进行读操作while(1){int len read(pipefd[0],buffer_read,sizeof(buffer_read)-1);if(len 0){buffer_read[len] \0;}cout 父进程:buffer_readendl;}waitpid(fd,nullptr,0);}else if(fd 0){//子进程 进行写操作//1.关闭读的fdclose(pipefd[0]);//2.1开辟缓冲区char buffer_write[1024*8];//2.2传输的小溪string message I am son, i am writing message for father!;//进行写操作int count 0;while(1){//snprintf 初始化缓冲区snprintf(buffer_write,sizeof(buffer_write),%s:%d,message.c_str(),count);//开始向文件缓冲区进行写数据write(pipefd[1],buffer_write,strlen(buffer_write));sleep(1);}exit(0);}return 0; }
http://www.zqtcl.cn/news/545198/

相关文章:

  • 保定网站建设方案报价怎么做网站_
  • 做网站功能的框架结构图做网站用python好吗
  • 襄樊市网站建设模版网站建设企业
  • 网站换服务器php大流量网站开发规范
  • 网站备案主体域名平面设计线下培训班多少钱
  • 优秀网站专题wordpress 外部调用插件
  • 域名服务网站建设科技公司做棋子网站怎么提高浏览量
  • 用易语言做攻击网站软件下载彩页设计多少钱
  • 个人网站可以做淘宝推广手机版怎么用百度快照
  • 制作网站的公司叫什么外包软件
  • 廊坊企业建站模板邱县手机网站建设
  • 辽宁响应式网站费用建设银行官网app
  • 河北黄骅市网站建设网站外链的优化方法
  • 青岛城阳网站制作网站建设详细步骤
  • 先做网站再付款 怎么回答设计方案步骤
  • 汕头建站模板济南网站建设富库网络
  • 创业网站建设方案项目书手机app设计软件
  • 建设端午节网站的目的主题wordpress语法高亮插件
  • 做网站开发使用百分比的好处深圳建设网站公司简介
  • 行距网站上海专业网站建设机构
  • 闵行手机网站建设鲅鱼圈规划建设局网站
  • 合肥市城乡和建设网站网页设计与网站建设区别
  • 青岛网站建设企业建站北京网站模仿
  • 广州建设网站的公司简介湛江建设厅网站
  • 做网站不赚钱了网站关键词排行查询
  • 印度人通过什么网站做国际贸易三门峡做网站
  • 网站排名快速提升工具招远建网站首选公司
  • 手机网站格式商城网游开发公司
  • 手机怎样创建网站长春网站建设哪家专业
  • 做pop网站定制开发教程