3个或更多进程之间的通信

Posted

技术标签:

【中文标题】3个或更多进程之间的通信【英文标题】:Communication between 3 or more processes 【发布时间】:2019-01-03 17:25:29 【问题描述】:

3 个或更多进程如何相互通信?就我而言,我有 2 个或更多进程可以将信息(消息)发送到另一个进程(如服务器)。哪个可以是我的问题的优雅解决方案(不编写大量代码)?我不想使用套接字(我不想通过所有 TCP/IP 堆栈进行本地通信)。

【问题讨论】:

也许是命名管道? 使用您尚未排除的 IPC 机制之一。 命名管道听起来不错,但我需要知道将与我通信的进程数(管道仅用于两个进程之间) 所以在这种情况下你需要两个或更多管道 命名管道不限于 2 个进程。可以有 1 个服务器和多个客户端。 【参考方案1】:

没有代码就没有解决方案,而套接字大约是您可以编写的最小(也是最简单)的代码。 您也可以使用Messages、Named Pipes,或者更可取的是File Mapping。

【讨论】:

以上是关于3个或更多进程之间的通信的主要内容,如果未能解决你的问题,请参考以下文章

进程间通信方式及特点

将子进程的标准输出重定向到 2 个或更多子进程的标准输入

11.python并发入门(part10 多进程之间实现通信,以及进程之间的数据共享)

(转)IPC相关的命令

进程间的通信-队列/管道以及进程间的数据共享和进程池

安卓多线程间通信和多进程之间通信有什么不同?分别怎么实现?