问一下,大家在网络编程中。进程间通讯是怎么做的。

bcb_alone 2005-08-18 11:10:55
假如,有一个接收数据的进程。
一个处理数据,然后发送数据的进程。
它们之间如何传递数据的。
是用消息队列?
还是共享内存的方式。
我主要想知道,一般用消息队列的情况。
如有代码示例,更好,谢谢啦!
...全文
131 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
freebob2000 2005-08-18
  • 打赏
  • 举报
回复
多线程
用信号量通信
younggle 2005-08-18
  • 打赏
  • 举报
回复
使用多线程就可以就了,没有必要使用多进程。
参考一下,有源代码的:
http://www.vczx.com/article/show.php?id=1041
newbiestar 2005-08-18
  • 打赏
  • 举报
回复
使用多线程比较明智。

多进程比较麻烦的就在于进程间通讯,因为每一个进程有自己的进程空间,都是互相独立的,这样的话就造成了必须使用额外的方法来进行进程间的数据交换。而多线程都在同样的一个进程中,这样的话可以使用同样的进程空间,数据交换方便多了。

如果一定要使用多进程的话,需要使用进程间通讯机制来进行通讯,譬如pipe(不知道Windows的pipe语义是否和POSIX的一致,如果一致的话,需要通讯的进程有共同的祖先进程),named pipe可以解决上面的问题。另外,其实socket也是一种进程间通讯机制,但是一般用在两个进程不在一个主机的情况下。
DentistryDoctor 2005-08-18
  • 打赏
  • 举报
回复
这种情况应该用多线程吧。如果是用多进程,考虑一下FileMapping.
i_noname 2005-08-18
  • 打赏
  • 举报
回复
网络编程用多线程吧?多进程处理?
进程间通信用filemapping

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧