读书人

对于进程间通讯的一个有关问题(tcp方式

发布时间: 2012-09-15 19:09:28 作者: rapoo

对于进程间通讯的一个问题(tcp方式)
刚刚了解到LINUX的进程间通讯还有通过TCP这一形式,这种方式和传统的内存共享方式相比,哪种效率更高?在什么时候适用这种方式?
另外,windows平台可以用这种方式进行进程间通讯么?

[解决办法]
你说的Tcp是协议吧,是指的socket以Tcp形式实现?

socket肯定比不上内存共享方式效率高!
但是socket能跨计算机,内存共享不能!

http://hi.baidu.com/tian_20032242/blog/item/f7b534233b555b589822eddb.html
[解决办法]
接楼上的,我回答第2问题:windows平台可以用这种方式进行进程间通讯么?
答:Windows下的进程通信方式包括:
1.共享缓存区(共享内存),例如可以通过“剪贴板”实现;
2.管道通信(命名、匿名管道);
3.邮槽通信。
其中命名管道和邮槽可以实现跨网络通信;共享缓存区、匿名管道不可以跨网络通信,只能用于本地机器进程间的通信。
希望对你有帮助。
[解决办法]
哪种效率更高?在什么时候适用这种方式?
使用内存映射的方式肯定会高一些,使用套接字比较容易吧
另外,windows平台可以用这种方式进行进程间通讯么?
当然可以
[解决办法]
TCP,可以跨平台,跨主机通信,灵活性很大。当然了,性能也相对其它方式低。
也可以现在在一个主机上部署,等有需求时跨主机部署,只是修改一下配置的问题。
相对它的优点,它的缺点不值一提。推荐选用。

共享内存及其它方式,不能跨平台,也不能跨主机。
共享内存是效率最高,同时是最不安全的方式。

读书人网 >C++

热点推荐