返回信息流linux进程通信方式有:管道,信号,消息队列,共享内存,信号量和套接字。请问一下其中哪些是在实际中应用较多的?
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #7544同步于 2010/2/27
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖
linux几种进程通信方式哪些比较常用?
cxj1125
2010/2/27镜像同步4 回复
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
共享内存速度最快,mmap之后两个进程可以共用一个数据结构(指针),最方便;匿名管道专用于父子进程通信,命名管道、TCP套接字可以使用文件描述符,操作起来完全等同于操作文件,利于I/O多路转接,消息队列一般用的较少,信号量一般仅用于进程同步,不作为进程间通信的手段。各种通信方式不能一概而论,得根据性能、代码复杂度、接口复杂度,视实际需求情况而选用。
我个人推荐:传递信令时使用TCP Socket或FIFO,共享大段数据使用共享内存(POSIX而非SysV),信令同步用FIFO或Socket实现自己设计的进程间通信的协议,共享内存同步用信号灯。
【 在 cxj1125 的大作中提到: 】
: linux进程通信方式有:管道,信号,消息队列,共享内存,信号量和套接字。请问一下其中哪些是在实际中应用较多的?
【 在 josephbupt 的大作中提到: 】
: 我个人推荐:传递信令时使用TCP Socket或FIFO,共享大段数据使用共享内存(POSIX而非SysV),信令同步用FIFO或Socket实现自己设计的进程间通信的协议,共享内存同步用信号灯。
好的,谢了
赞
【 在 josephbupt (爱乐年华) 的大作中提到: 】
: 我个人推荐:传递信令时使用TCP Socket或FIFO,共享大段数据使用共享内存(POSIX而非SysV),信令同步用FIFO或Socket实现自己设计的进程间通信的协议,共享内存同步用信号灯。