免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: svenwang
打印 上一主题 下一主题

线程间用那一种文件描述符通讯效率最高? [复制链接]

论坛徽章:
0
1 [报告]
发表于 2005-03-03 22:45 |显示全部楼层

线程间用那一种文件描述符通讯效率最高?

线程间最快的方法当然是公用内存!
比如用堆。

论坛徽章:
0
2 [报告]
发表于 2005-03-03 23:01 |显示全部楼层

线程间用那一种文件描述符通讯效率最高?

原帖由 "柳五随风" 发表:
不考虑MULTIPLEX的话,共享就行了.
考虑MULTIPLEX的话,PIPE最快,但PIPE一般在KERNEL里面只有4K的空间,我见过最大的也就几个PAGE,考虑到PIPE的操作是原子的,所以PIPE不适合大数据交换.NAME PIPE也好不到那里去.SOCKET..........


就算用上sem也是内存共享快。而且通讯量越大越显得快。

论坛徽章:
0
3 [报告]
发表于 2005-03-04 00:44 |显示全部楼层

线程间用那一种文件描述符通讯效率最高?

原帖由 "svenwang" 发表:

我是想用select/poll来等待数据,所以相同的地址空间/共享内存不能解决这个问题。


我不信,用sem肯定可以。

论坛徽章:
0
4 [报告]
发表于 2005-03-04 19:47 |显示全部楼层

线程间用那一种文件描述符通讯效率最高?

不论是pipe还是socket,都要对数据进行至少2次复制。
而共用内存不用复制。

所以pipe或socket不可能比共用内存更快,就算用上信号量也一样。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP