【发布时间】:2020-11-27 20:14:15
【问题描述】:
我在进程A中使用boost进程间消息队列编写了IPC机制,这基本上是与进程A进行数据收发。使用boost消息队列的原因是考虑到windows和linux的兼容性。
但是进程 B 是一个仅使用 posix 消息队列实现的 linux 版本。这种情况是否存在兼容性问题?如果进程 A 使用相同的队列名称,则进程 A 打开 boost 消息队列并等待进程 B 使用 posix 消息队列发送数据?
【问题讨论】:
我在进程A中使用boost进程间消息队列编写了IPC机制,这基本上是与进程A进行数据收发。使用boost消息队列的原因是考虑到windows和linux的兼容性。
但是进程 B 是一个仅使用 posix 消息队列实现的 linux 版本。这种情况是否存在兼容性问题?如果进程 A 使用相同的队列名称,则进程 A 打开 boost 消息队列并等待进程 B 使用 posix 消息队列发送数据?
【问题讨论】:
Boost Interprocesses 消息队列 (message_queue) 根本不使用 Posix 消息队列。与不使用 Boost Interprocess 的其他程序不兼容。
分析请看这里:boost::interprocess message queue timed_receive() internal procedure
【讨论】: