c++ - 极其简单的 POSIX C++ IPC

标签 c++ posix ipc

我对 c++ linux-only(可能放宽到 posix-only)IPC 解决方案感兴趣,它的行为如下;启动了一个名为“计算器”的程序,可以收听消息。计算器将有一个循环,定期检查消息字符串,然后根据其内容采取行动。

另一个名为“send_msg”的程序可以将消息发送到它的 pid(最好是主机名/pid,通过 tcp 或 udp)。

$ calculator &

// awhile later

$ send_msg <calculator pid> show calculations
Calc1: 52% complete
Calc2: 21% complete
$ send_msg <calculator pid> alter Calc2 <numeric parameters>
Ok! I'm restarting my calculations!
$

我非常精通c++,但对网络编程一无所知,现在也不想花太多时间学习它。是否有一个易于使用的 c++ 包可以执行上述操作?我宁愿不必选择端口号、文件位置等内容。

最佳答案

我想你可能会喜欢 zeromq (拼写为 0mq),或 fork 的 crossroadsio ,因为它们抽象出大量的 handholding,让您可以简单地发布/订阅,以及许多其他模式。 0mq 有(曾经?)一堆以简单的乒乓球开头的例子。

关于c++ - 极其简单的 POSIX C++ IPC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12810824/

相关文章:

c - 如何组织一个需要创建Window并退出的C程序?

c++ - 类和类型的问题

c++ - 从 Vector 访问派生类中的对象

c++ - for循环条件的性能差异?

c++ - 库、DLL 和 .h 文件

c - 处理 pthread 以干净退出

python - FIFO 管道中的数据丢失?

c - 为什么 open/send/sendto/sendmsg 函数中的标志参数是有符号整数而不是无符号整数?

c - Posix select()/poll() 和 pthread IPC