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

Linux应用软件编程-多任务处理(管道)

管道:进程间通信的文件

管道特点:

1. 读阻塞: 读端和写端都存在时, 当管道中无数据时,read阻塞等待读。

2. read到0:当所有的写端关闭,管道中有数据时,读到数据,无数据则read不阻塞,返回0;

3. 写阻塞: 当读端和写段都存在时,当管道满,则发生写阻塞。

4. 管道破裂:当所有的读端关闭,向管道中写数据,发生管道破裂(异常)

无名管道:只能用在同一主机具有亲缘关系的进程间通信pipe。无名管道默认大小64K.

1. 创建管道:pipe(pipefd),int pipefd[2]

2. 写管道:write()

3. 读管道:read()

4. 关闭管道:close();

有名管道:可以用在同一主机任意进程间通信(fifo)。

1. 创建管道文件 int num = mkfifo("./myfifo",0664);

2. 打开管道文件 open

3. 写管道 write

4. 读管道 read

5. 关闭管道 close

6. 删除管道文件 remove("myfio")

http://www.lryc.cn/news/512525.html

相关文章:

  • 如何在鸿蒙本地模拟器中使用HDC工具
  • 《Vue进阶教程》第三十一课:ref的初步实现
  • C语言初阶习题【19】三子棋游戏
  • Linux day 1129
  • 【优化算法】梯度优化算法:一种新的原启发式优化算法算法
  • 内部类(3)
  • svn分支相关操作(小乌龟操作版)
  • rust_shyper
  • HAL 库 HAL_UARTEx_ReceiveToIdle_IT 函数解析
  • 【ArcGIS Pro】完整的nc文件整理表格模型构建流程及工具练习数据分享
  • REDIS的集群
  • 酒店管理系统的设计与实现【源码+文档+部署讲解】
  • [论文阅读] (34)ESWA2024 基于SGDC的轻量级入侵检测系统
  • 从社区共识到资本效能:解析SYNBO的去中心化投资协议创新
  • 一、数据库 Sqlite3 资料
  • Passlib库介绍及使用指南
  • 模型选择+过拟合欠拟合
  • 绝美的数据处理图-三坐标轴-散点图-堆叠图-数据可视化图
  • 损失函数-二分类和多分类
  • 汽车损坏识别检测数据集,使用yolo,pasical voc xml,coco json格式标注,6696张图片,可识别11种损坏类型,识别率89.7%
  • 从 Elastic 迁移到 Easysearch 指引
  • Yapi RCE 复现和批量编写
  • 【2024年-9月-21日-开源社区openEuler实践记录】PilotGo:简化运维管理的开源利器
  • ubuntu 20.04 国内源安装docker
  • 比亚迪30亿教育慈善基金正式启动,助推中国科教进步
  • 【链表】重排链表,看似复杂实则并不简单~
  • yakit-靶场-高级前端加解密与验签实战(for嵌套纯享版)
  • 洛谷 P1328 [NOIP2014 提高组] 生活大爆炸版石头剪刀布
  • NLP论文速读(NeurIPS 2024)|BERT作为生成式上下文学习者BERTs are Generative In-Context Learners
  • 亚马逊云科技 | Amazon Nova:智能技术新势力