0

ZMQueue我检查了实现 Runnable 接口的 JeroMQ 类的源代码,如下所示:

private final Socket  inSocket;
private final Socket outSocket;

 public ZMQQueue( Context context, Socket inSocket, Socket outSocket ){
    this.inSocket  =  inSocket;
    this.outSocket = outSocket;
 }

 @Override
 public void run(){
        zmq.ZMQ.proxy( inSocket.base(), outSocket.base(), null );
 }

正如您所见,里面run()只有一个语句,即调用

ZMQ.proxy()- 这里发生了什么?

在构造函数中,
它把一个Context实例作为参数并且什么都不做。

任何人都可以解释一下,这个类实现的目的是什么?

4

1 回答 1

1

它是一个在单独线程中工作的简单代理,它从一个套接字获取消息并将其放入另一个套接字,ZMQueue 类只是 jeromq/jzmq 库中的某种高级 api。

您也可以使用没有 ZMQueue 类(doc)的代理。或者您可以通过您需要的任何处理自己实现更复杂的东西。

于 2016-12-20T18:34:04.660 回答