JeroMQ 中 ZMQueue class 的用途是什么
what is the use of ZMQueue class in JeroMQ
我检查了来自 JeroMQ 的 ZMQueue
class 的源代码,它实现了 Runnable 接口,如下所示:
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()
中看到的那样,那里只有一条语句,即调用 a
ZMQ.proxy()
- 这里发生了什么?
并且在构造函数中,
它将一个 Context
实例作为参数并且不对其进行任何操作。
任何人都可以解释一下,此 class 实施的目的是什么?
它是在单独线程中工作的简单代理,它从一个套接字获取消息并将其放入另一个套接字,ZMQueue class 只是 [= 中的一种高级 api 15=]图书馆。
您也可以在没有 ZMQueue class (doc) 的情况下使用代理。
或者您可以根据需要进行任何处理,自己实现更复杂的东西。
我检查了来自 JeroMQ 的 ZMQueue
class 的源代码,它实现了 Runnable 接口,如下所示:
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()
中看到的那样,那里只有一条语句,即调用 a
ZMQ.proxy()
- 这里发生了什么?
并且在构造函数中,
它将一个 Context
实例作为参数并且不对其进行任何操作。
任何人都可以解释一下,此 class 实施的目的是什么?
它是在单独线程中工作的简单代理,它从一个套接字获取消息并将其放入另一个套接字,ZMQueue class 只是 [= 中的一种高级 api 15=]图书馆。
您也可以在没有 ZMQueue class (doc) 的情况下使用代理。 或者您可以根据需要进行任何处理,自己实现更复杂的东西。