0

ZMQueueRunnable インターフェイスを実装する 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()ステートメントは 1 つしかありません。つまり、

ZMQ.proxy()- そこで何が起こるの?

そしてコンストラクターでは
、インスタンスをパラメーターとして取り、それに対してContext何もしません。

このクラスがどのような目的で実装されているか、誰でも説明できますか?

4

1 に答える 1

1

これは、別のスレッドで動作する単純なプロキシです。1 つのソケットからメッセージを受け取り、それを別のソケットに置きます。ZMQueue クラスは、jeromq/jzmq ライブラリの高レベル API のようなものです。

また、ZMQueue クラス ( doc ) なしでプロキシを使用することもできます。または、必要な処理を使用して、より複雑なものを自分で実装することもできます。

于 2016-12-20T18:34:04.660 に答える