LinuxSir.cn,穿越时空的Linuxsir!

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

多个进程写同一个无名管道是否需要加锁?

[复制链接]
发表于 2008-5-7 20:28:31 | 显示全部楼层 |阅读模式
有一个主进程要与多个子进程通信,使用了一个无名管道,每个子进程都要向管道中多次写数据,即多次调用write,我想问的问题是,是否有可能一个子进程两次write之间,被别的子进程往管道里写入了数据。如果有,该怎么样才能在一个子进程写的时候,不让别的子进程往管道里写?
发表于 2008-5-7 23:10:12 | 显示全部楼层
Post by neubuffalo;1846863
有一个主进程要与多个子进程通信,使用了一个无名管道,每个子进程都要向管道中多次写数据,即多次调用write,我想问的问题是,是否有可能一个子进程两次write之间,被别的子进程往管道里写入了数据。如果有,该怎么样才能在一个子进程写的时候,不让别的子进程往管道里写?


会有这种竞争关系发生,可以通过SYSTEM V信号灯或者SYSTEM V消息队列来实现进程间的同步。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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