zeromq如何在异步多线程模型中与一个特定的客户端连续通信

时间:2019-02-24 23:02:50

标签: c++ multithreading client-server zeromq server-communication

我试图将C ++ ZMQ库用作通信库,试图构建多线程服务器,并发响应多个客户端。 我下面的示例是: https://github.com/booksbyus/zguide/blob/master/examples/C%2B%2B/asyncsrv.cpp

简而言之,示例如下:

client-> ROUTER套接字(服务器主线程)-> DEALER套接字(服务器工作线程)-> ROUTER套接字->客户端。

但是我的应用程序需要使客户端线程和工作线程能够在一个会话中多次通信,我需要:

客户端->服务器主线程->服务器辅助线程->客户端->服务器辅助线程->客户端...服务器辅助线程->客户端

或类似的东西。 我之所以需要它,是因为发送给客户端的数据有时太大而无法放入单个ZMQ包中,所以我需要将数据分成几个块,一次发送一次(通过“发送”,我的意思是zmq中的发送/接收对)。还有一种说法是服务器需要先发送一个程序包,然后进行一些处理(与其他模块通信),然后再发送以下程序包。

感谢您的帮助!

0 个答案:

没有答案