位置: 编程技术 - 正文

Linux管道通信C语言编程示例(linux 管道实现)

编辑:rootadmin

推荐整理分享Linux管道通信C语言编程示例(linux 管道实现),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux 管道实现,linux中管道的用法,linux管道的实现原理,linux中管道的作用,linux管道的实现原理,linux管道编程,linux c管道,linux管道编程,内容如对您有帮助,希望把文章链接给更多的朋友!

一、定义

管道是单向的、先进先出的。它将一个程序的输入和另一个程序的输出连接起来。数据被一个进程读出后,将被从管道中删除。分为无名和有名管道两种。前者用于父进程和子进程间的通信,后者用于同一系统的两个进程间通信。 二、无名管道

Linux管道通信C语言编程示例(linux 管道实现)

复制代码代码如下: int pipe(int fd[2]); 其中,fd[0]用于读管道,fd[1]用于写管道。若成功则返回零,否则返回-1,错误原因存于errno中。

三、有名管道:FIFO

复制代码代码如下: int mkfifo(const char* pathname,mode_t mode)open时使用O_NONBLOCK,访问要求无法满足则立即出错返回。erron是ENXIO。 例子:复制代码代码如下:fread.c //读文件</p><p>#include<errno.h>#include<memory.h>#define FIFO "myfifo" main(){ int fd; char buff[]; if(access(FIFO,F_OK) == -1){ mkfifo(FIFO,); } fd=open(FIFO,O_RDONLY|O_NONBLOCK); //设置非阻塞打开,否则当没有输入时,会阻塞在read函数 </p><p> int num; while(1){ memset(buff,'',); //如不清空最后的字符会出现乱码 if((num=read(fd,buff,))==0){ printf("waiting.....n"); sleep(1); continue; } printf("read %d in fifo , it's %s",num,buff); sleep(1); }}</p><p>fwrite.c //写文件</p><p> </p><p>#include<stdio.h>#include<fcntl.h>#include<memory.h>#define FIFO "myfifo"main(){ int fd; char buff[]; memset(buff,'',); scanf("%s",buff); if(access(FIFO,F_OK) == -1){ mkfifo(FIFO,); } fd=open(FIFO,O_WRONLY); int num; num=write(fd,buff,strlen(buff)); printf("%d char is written! It's %sn",num,buff);}4、管道关闭:用close()关闭相应的文件描述符即可。

Linux共享内存编程示例 一、概念共享内存是被多个进程共享的一部分物理内存,是进程间共享数据的最快的一种方法。二、实现分为两个步骤:1、创建共享内存。2、映射共享

Linux 多线程编程实例 一、多线程VS多进程和进程相比,线程有很多优势。在Linux系统下,启动一个新的进程必须分配给它独立的地址空间,建立众多的数据表来维护代码段和

Linux消息队列编程示例 一、概念消息队列就是一个消息的链表。可以把消息看作一个记录,具有特定的格式以及特定的优先级。对消息队列有写权限的进程可以向中按照一定

标签: linux 管道实现

本文链接地址:https://www.jiuchutong.com/biancheng/364794.html 转载请保留说明!

上一篇:Linux补丁工具patch生成使用补丁用法示例(linux补丁工具)

下一篇:Linux共享内存编程示例(linux共享内存同步机制)

  • 所得税汇算资产总额怎么算
  • 税收实体法有哪18种
  • 营业执照注销要收费用吗
  • 社保缴费是当月扣当月的吗
  • 非限定性净资产借贷方向
  • 土地增值所得需交什么税
  • 技术推广服务包含什么 奇瑞汽车
  • 租金没有发票可以入账吗
  • 发票右上角数字是什么
  • 微商怎么收税
  • 出售专利权收入属于什么收入
  • 会计档案交接怎么填写
  • 营改增之后账务怎么处理
  • 给供应商付款怎么做分录
  • 业务有提成个税怎么扣
  • 租房发票的税由谁承担
  • 年所得12万元以上个人
  • 贴现凭证的贴现银行是谁
  • 辅助生产费用怎么归集
  • 评估资产没有发票和流水怎么办
  • 成本计算错误如何应对
  • 一次性购房发票什么时候给开
  • 代理报关的报关单发货人
  • 多提的费用如何做冲减分录
  • 未开票收入申报后又要开票
  • windows11永久解决蓝屏
  • 文件错误会追究拟稿人吗
  • 错账改正方法
  • 笔记本电池保养注意事项
  • php实战开发教程
  • 自创商誉可确认为商誉且在资产负债表中列报
  • 最大的apple商店
  • nginx ss
  • 企业所得税减免20%按5%征收
  • 本年利润怎么结转到未分配利润分录
  • 纳税检查调整的销售额确认收入吗
  • php支付宝支付流程原理
  • php curl 封装
  • 销售商品怎么做好宣传
  • 职工教育教育经费
  • 小微企业增值税免税政策2023年
  • 存货盘亏计入什么收入
  • dedecms转eyoucms
  • 挂靠的公司替我们交的税款如何记账?
  • Spring(十五):Spring整合MyBatis的两种方式
  • 为SQLite3提供一个ANSI到UTF8的互转函数
  • 发票开具与小票的关系是怎样的
  • 房地产城建税计税依据
  • 税法税前扣除
  • 抵债资产如何做债权转让
  • 核算产品的成本的表
  • 关联交易现金流
  • 原材料用于在建工程
  • 工会经费购买的固定资产处置
  • 材料抵扣进项税额
  • 生产型企业怎么做账
  • 小规模季度没超过45万怎么纳税增值税
  • mysql配置文件my.ini
  • 关闭默认共享的影响
  • 英雄联盟win8
  • ubuntu的快捷键
  • mac怎么隐藏桌面文件
  • linux 清理
  • internetfeatures.exe是什么文件
  • win8恢复出厂设置方法
  • 右下角小喇叭调不了声音
  • linux批量处理文件
  • 在Linux系统中如何打开R语言控制台
  • windows7旗舰版怎样扩大虚拟内存
  • 如何旋转图片30度
  • js 阻止触发某个事件
  • css ul
  • unity屏幕坐标 ui坐标
  • mvp 框架
  • easyui 表单提交
  • Android 使用log4j2
  • 如何将个税人员信息改为非正常
  • 常州税务局举报网站
  • 新疆高龄补贴2024发放标准是多少
  • 葫芦岛市税务局电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设