LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 534|回复: 5

Are sys V mesg queue ,semphore still useful?

[复制链接]
发表于 2004-7-24 00:14:16 | 显示全部楼层 |阅读模式
Are these deprecated or should not used in newly written code?
发表于 2004-7-24 08:48:23 | 显示全部楼层
没有过时,仍然在使用。
发表于 2004-7-24 12:44:04 | 显示全部楼层
我觉得消息队列比较麻烦,并且完全可以用全双工管道等技术代替,没必要用了
但信号量在有些复杂的情况下不得不用
发表于 2004-7-24 13:18:53 | 显示全部楼层
linux没有实现全双工的管道。简单的需要双工的IPC最好还是用UNIX domain socket。数据量大的话就用shared memory。不过双工的话就要做好同步,防止dead lock了
发表于 2004-7-24 13:30:22 | 显示全部楼层
实际上用 socketpair() 创建的 UNIX domain socket 就和
全双工管道一样,据说在一些系统上 pipe() 就是用
socketpair() 实现的,只是把一个方向屏蔽掉
发表于 2004-7-24 17:48:42 | 显示全部楼层
bsd是实现了双工管道的(通过socketpair),linux估计就是先创建再关掉其中一个方向吧?APUE里面似乎也说过。不过现在存在pipe主要是为了兼容以前的程序。自己写还是尽量不用这个东东的好。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表