将ZeroMQ REQ/REP与C++11期货混合
Mixing ZeroMQ REQ/REP with C++ 11 futures
我正在设计一个监视和控制接口来管理许多服务。需要有积极的反馈,所以我想使用REQ/REP通道来获得每个请求的响应。
然而,我担心通道的同步性,以及在发送另一个请求之前需要等待每个请求完成的事实。我读过一些关于路由器/经销商模式的文章,它们似乎可以工作,但出于我的目的,它可以使用一些抽象来隐藏路由细节。
使用C++11期货,这样就可以发出返回期货的请求,这有意义吗?通过这种方式,可以发出许多请求,然后等待对期货集的调用?
未来将封装将请求与响应关联起来所需的细节。
有人混淆了这些概念吗?
谢谢。
Futures将把您的实现绑定到进程内套接字,因为您不能实现未来的进程外套接字。
为了从并发请求中获得任何好处,您需要多个服务器响应。
你的问题不清楚拓扑结构,你没有解释你是否有多个请求者和一个回复者,或者一个请求者可以在等待回复时做其他工作(包括发出更多请求)。如果是以后的情况,您将需要一种匹配请求回复的方法,除非您能够保证处理顺序。
相关文章:
- MSVC是否支持C++11样式的属性而不是__declspec
- 创建LinkedList退出,返回代码为-11(SIGSEGV)
- 混合组合和继承的C++问题
- 我可以将一个用clang c++11编译的对象与另一个用c++17编译的对象链接起来吗
- 在混合代码库中将C转换为C++时出现许多包含错误
- 继承:构造函数,初始化C++11中基类的类C数组成员
- 如何将模板转换为C++11之前的模板
- c++11评估顺序(未定义的行为)
- C++中的VLA,扩展名为std=C++11
- C++11 中的混合列表初始化
- Direct3d 11深度模板 / Alpha混合问题
- 将 boost::thread 与 C++11 std::mutex 混合使用是否安全?
- 混合助推器的multi_array和可选,C++11 unique_ptr不起作用
- C++11 在开关大小写中混合枚举类和无符号 int 将无法编译
- C++11 中的混合(列表+字典)容器
- 在 C11/C++11 中,可以在同一内存上混合原子/非原子操作
- 混合c++ 11线程操作和QThread操作
- 带有混合虚基和非虚基的c++ 11类格
- 将ZeroMQ REQ/REP与C++11期货混合
- 在xcode 4.5.2中编译带有c++ 11支持的混合objective-C/ c++项目时出现链接错误