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 回答