【发布时间】:2011-04-02 06:37:16
【问题描述】:
我正在从一个主线程生成多个工作线程。我可以从主线程为每个线程创建 message_queue 并从主线程发送消息吗?我问这个是因为消息队列是用于进程间通信的。
我是否需要考虑与此相关的任何具体事项
【问题讨论】:
标签: multithreading boost message-queue
我正在从一个主线程生成多个工作线程。我可以从主线程为每个线程创建 message_queue 并从主线程发送消息吗?我问这个是因为消息队列是用于进程间通信的。
我是否需要考虑与此相关的任何具体事项
【问题讨论】:
标签: multithreading boost message-queue
正如Boost Message Queue not based on POSIX message queue? 所述(并在文档中提到)。如果您谈论的是线程,那么您拥有相同的地址空间并且不需要进程间功能。
我建议在我的包装类中使用您选择的 STL 容器(有关系)并用同步元素(可变排除/互斥)包围 setter/getter,正如How do I create synchronization mechanisms in managed shared memory segments? 所提到的那样。对象是进程间通信的性能优势——在进程边界之间复制数据块。另一方面,您可以使用所有简洁的功能,例如shared_ptr.
【讨论】: