当前位置: 技术问答>linux和unix
求Linux下的进程间通信设计方案
来源: 互联网 发布时间:2017-03-23
本文导语: 我知道linux使用的进程间通信方式: (1)管道(pipe)和有名管道(FIFO) (2)信号(signal) (3)消息队列 (4)共享内存 (5)信号量 (6)套接字(socket) 现在我需要能有个具体的通信CS架构方案,可以是类似andrio...
我知道linux使用的进程间通信方式:
(1)管道(pipe)和有名管道(FIFO)
(2)信号(signal)
(3)消息队列
(4)共享内存
(5)信号量
(6)套接字(socket)
现在我需要能有个具体的通信CS架构方案,可以是类似andriod的binder通信机制。最好是socket的通信方案,多谢啦。
目前在我的脑海里的socket通信机制,是靠开启多个线程来监听不同的port口实现的,感觉上还蛮复杂的。
我的需求是:不同的进程通过socket机制发送request后,然后等待confirm结果。或者是发送indication,然后等待response。完成这样一个交互的机制。
(1)管道(pipe)和有名管道(FIFO)
(2)信号(signal)
(3)消息队列
(4)共享内存
(5)信号量
(6)套接字(socket)
现在我需要能有个具体的通信CS架构方案,可以是类似andriod的binder通信机制。最好是socket的通信方案,多谢啦。
目前在我的脑海里的socket通信机制,是靠开启多个线程来监听不同的port口实现的,感觉上还蛮复杂的。
我的需求是:不同的进程通过socket机制发送request后,然后等待confirm结果。或者是发送indication,然后等待response。完成这样一个交互的机制。
|
这个我以前写过一个简单的,不知楼主是否用的上。
在服务端,我是用的select(),然后来一个请求就给它从线程池中拉一个线程进行处理。
在服务端,我是用的select(),然后来一个请求就给它从线程池中拉一个线程进行处理。
|
好的,我整理了就email你啊
|
使用epoll更简单、高效。
建议把代码贴出来让更多的人可以学习。
|
如果是Socket通信,可以试试看gSoap
因为是代码一级的集成,扩展性不错,也跨平台
因为是代码一级的集成,扩展性不错,也跨平台