博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
管道 一些知识
阅读量:6422 次
发布时间:2019-06-23

本文共 496 字,大约阅读时间需要 1 分钟。

1、

参考:

1.1、二楼 说到:

小于或等于 PIPE_BUF 字节的 write 一定是原子操作,超过这个值的不一定。

POSIX 规定 PIPE_BUF 至少是 512。

1.2、九楼 说到:

PIPE_BUF这个值可以用ulimit -p查看的。linux默认的是8。但是这里的单位不是byte这里的单位是512bytes。所以默认的大小4096的。只要你不写超过这么大那他肯定就是原子的。

 

2、

DuplicateHandle

参考:

 

3、

参考:

管道(阻塞的读和写)写满之后,会阻塞到写端;

只有读端把管道读空(我的机器上的管道长度是4K)之后才能继续写管道,我以前以为是,只要读端读了一个字节,写端就可以继续写。

还有是:我一开始疯狂的写管道,可以写64K而不是机器上的标识(我用ulimit -p查看到是4K)4K。这个我也不知道是怎么回事儿。

ZC:个人理解,一旦写满,就需要读空才能继续写。不写满的情况,不会产生阻塞。自己未验证过...

 

 

 

 

N

 

转载于:https://www.cnblogs.com/CodeSkill/p/4950333.html

你可能感兴趣的文章
《设计模式解析(第2版•修订版)》—第2章 2.2节什么是UML
查看>>
【健康医疗】4步完成数据分析报表,让医疗数据转化为生产力
查看>>
【直播】APP全量混淆和瘦身技术揭秘
查看>>
10个大坑,当你产品上架AppStore会遇到
查看>>
【shell 脚本】两种登录方式
查看>>
UIScrollView视差模糊效果
查看>>
大数据计算新贵Spark在腾讯雅虎优酷成功应用解析
查看>>
字典树(Trie tree)
查看>>
2013编程之美全国挑战赛第一场-传话游戏
查看>>
测试之新生入学系统,多一份收获
查看>>
无锁和无等待的定义和例子
查看>>
linux中c语言errno的使用
查看>>
【Mongo】uploadify插件帮助实现批量上传
查看>>
SpriteBuilder&Cocos2D使用CCEffect特效实现天黑天亮过度效果
查看>>
04-Windows频繁打开和关闭端口可能引发的问题 | 07.杂项
查看>>
hibernate总结-映射
查看>>
【SSH项目实战】国税协同平台-5.头像上传功能
查看>>
【云栖大会】青磁:从金融上云到云上金融
查看>>
Activiti的引擎与引擎配置对象
查看>>
Vue 学习笔记 (三) -- VueCli 3 项目配置
查看>>