10

JZMQ(zmqのJavaバインディング)ソケットが接続されているかどうかを確認する方法はありますか?

ZContext zmqContext = new ZContext();
ZMQ.Socket workerSocket = zmqContext.createSocket(ZMQ.DEALER);
workerSocket.setIdentity("ID".getBytes());
workerSocket.connect("tcp://localhost:5556");

上記のコードの後、workerSocketが接続されているかどうかを確認したいと思います。接続状態を確認しておくと便利です。

4

1 に答える 1

12

いいえ、APIにはソケットが接続されているかどうかを確認するメソッドはありません。

ZeroMqはネットワークを抽象化します。クライアントとサーバーの接続は、接続を行うピアに対して完全に透過的です。クライアントまたはサーバーは、存在しないピアにメッセージを送信する場合があります。エラーは生成されません。代わりに、HWM構成に基づいてソケットバッファーにキューイングされます。

ピアの可用性を確認するには、タイムアウト係数を使用した同期要求/応答ハートビートを使用して手動で確認します。ここに例があります、それが役立つことを願っています!

ここでリクエスト/返信のサンプルをチェックしてください! https://github.com/imatix/zguide/tree/master/examples/

于 2013-08-09T01:45:55.493 に答える