作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Boost::interprocess::message_queue 来启用我的应用程序中线程之间的通信。我这样做有两个原因。首先,因为我不需要直接实现共享内存。同步机制,其次是因为我想以这种方式对系统建模,因为将来它可能会更改为进程间。
我的问题是:鉴于此限制,是否还有更合适的机制来启用线程间通信,或者我可以继续使用进程间队列而不用担心“进程间开销”?
最佳答案
您可以使用受 boost::mutex
和 boost::condition_variable
保护的 std::queue
Anthony Williams 在他的书“C++ Concurrency in Action”中提供了关于如何实现线程安全队列的精彩解释。
示例代码可以在他的网站上找到:
关于c++ - Boost线程间通信队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16153476/
我是一名优秀的程序员,十分优秀!