c++ - 在具有多个线程的进程之间 boost 消息队列( boost 线程)

标签 c++ boost boost-thread boost-interprocess

我在 C++ 上开发了 N 个进程之间的交互协议(protocol),这些进程通过 boost message_queue 队列相互通信。其中一个进程有 2 个执行线程,一个使用队列的主线程,和一个“帮助”线程,它监听在其中一个队列上接受的消息,如果需要,使用队列将新消息发送到其他进程.

boost 消息队列是否支持在线程之间的同步、单个线程在等待消息的情况下休眠等方面使用多个线程?我使用的线程库是boost线程库。

最佳答案

我不完全确定我理解这个问题,但是 Boost.Interprocess 的 message_queuethread-safe . receive()成员函数允许调用者阻塞,等待消息。使用 timed_receive() 可以完成超时读取.

关于c++ - 在具有多个线程的进程之间 boost 消息队列( boost 线程),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17045341/

相关文章:

c++ - MSVC++ 警告标志

c++ - 如何正确多次使用stringstream类

c++ - 资源容器的包装

c++ - 将 cstring 转换为驼峰式

c++ - UTF8 数据到 std::string 或 std::wstring

c++ - 有没有一种方法可以插入具有多个提示的 boost::multi_index ?

c++ - 增加两点之间的几何角度

c++ - 为什么 Boost 库在线程屏障的实现中使用 m_ Generation 变量?

c++ - 有没有办法让一个类的每个对象都有一个提升线程?

c++ - 如何用 "-pthread"而不是 "-mthread"编译 boost_thread?