我正在寻找有关选择一种可移植的方式以稳健的方式实现本地 IPC 的建议,因为我是 C++ 新手,并且希望避免摆弄共享内存和锁的常见陷阱;因此我在考虑消息传递风格的 IPC。
无论如何,我正计划出于其他原因使用 qt,因此我查看了 Qt ipc 选项。
如果我理解正确,qt 不提供完全可移植的消息传递 IPC 功能。它可以使用 d-bus,但在 windows 上使用它会是一个问题。其他方式仅限于嵌入式 linux 平台(我想将这个东西移植到 AIX)。
我找不到使用 QSharedMemory 和 QSystemSemaphores 的“信号和插槽”或消息传递样式实现
因此:我是否仅限于在 QSM/QSS 上实现功能?我还可以学习哪些其他选择?posix管道?协议缓冲区?增加队列和消息?
我正在考虑在 LGPL/GPL 样式许可下发布代码,这是否排除了协议缓冲区或提升库?
请再次强调,界面必须简单且防新手(否则我肯定会搞砸事情的大局:)),类型的序列化/反序列化、错误处理和资源处理也应该如此。