哪位大神可以告诉我NetMQ客户端如何判断和服务端断开,我现在只使用到了客户端,服务端是其他公司开发的,我判断不了服务端是否开了,没法判断什么时候连接断开。我知道这个dll是断开自动重连的,不过我需要能判断断开的功能

解决方案 »

  1.   

     class Program
        {
            static void Main(string[] args)
            {
                
                using (NetMQSocket clientSocket = new StreamSocket())
                {
                    NetMQProactor proactor = new NetMQProactor(clientSocket, ProcessMessage);
                    NetMQBeacon n = new NetMQBeacon();
                
                    Random rd = new Random();
                    int num = rd.Next(0, 100);
                    clientSocket.Connect("tcp://127.0.0.1:5003");
                    while (true)
                    {
                        Console.WriteLine(num + ",Please enter your message:");
                        string message = Console.ReadLine();
                        clientSocket.SendMoreFrame(clientSocket.Options.Identity);
                        clientSocket.SendFrame(num + ":" + message);
                        if (message == "exit")
                        {
                            break;
                        }
                    }
                }
            }
           public static void ProcessMessage(NetMQSocket socket, NetMQMessage message)
            {
                byte[] serverId = message.First.ToByteArray(true);
                string answer = System.Text.Encoding.Default.GetString(message.Last.Buffer);
                Console.WriteLine("Answer from server:{0}", answer);
            }    }
      

  2.   

    ping 一下嘛。ping不通一般是没开。