C++ 中是不是有用于远程进程间通信的 API?
Posted
技术标签:
【中文标题】C++ 中是不是有用于远程进程间通信的 API?【英文标题】:Is there an API in C++ for remote inter-process communication?C++ 中是否有用于远程进程间通信的 API? 【发布时间】:2011-11-08 18:59:33 【问题描述】:我正在寻找 C++ 标准中的 RMI API(在 java 中)的等价物。这些进程将在不同的机器上运行。
【问题讨论】:
谷歌"C++ Remote Procedure Call" 【参考方案1】:有许多用于进程间通信的 C++ API。但它们都不是 C++ 标准库的一部分。
我建议使用Boost.Interprocess。
但是,如果您在不同的机器上进行通信,则需要联网,而不是进程间通信。这需要一个网络库(也不是标准的); Boost.Asio 是一个合理的网络库。
【讨论】:
问题是关于在不同机器上运行的进程。 Boost.Interprocess 不适合。 @KirillV.Lyadvinsky:好点;这不可以。但是Boost.Asio 可以;) Asio 可以和套接字一样。太低级了。 @KirillV.Lyadvinsky:Asio 有许多基于套接字(流等)的高级原语。是否太低级由提问者决定。【参考方案2】:C++ 标准在这里无法为您提供帮助。您可以使用 DCOM 或 Corba(还有更多),具体取决于您使用的操作系统。
【讨论】:
以上是关于C++ 中是不是有用于远程进程间通信的 API?的主要内容,如果未能解决你的问题,请参考以下文章