Java 套接字快速重连
Java Socket fast reconnect
我遇到了套接字的小问题。
此方法大约需要 100 毫秒甚至更多,具体取决于服务器。
socket.connect(目的地);
然后我通过DataInput/Output流与一个复杂的软件通信,所以有查询阶段、握手阶段、登录请求阶段等
有什么方法可以 "reset" 握手阶段的数据流,这样服务器就会忘记所有内容,并且套接字将再次进入第一阶段而无需执行 socket.connect(dest);再次?
谢谢。
这完全取决于协议,与套接字本身无关。
没有什么能阻止您通过套接字来回传递尽可能多的消息;除非 你的 协议(或缺少明确定义的协议)如果它没有指示消息 starts/ends.
的位置
当使用 DataInput/OutputStream 时,您可以只定义一个消息 class 包含任何数据,双方将 运行 在无限循环中读取消息,处理并可能生成回复信息。
我遇到了套接字的小问题。
此方法大约需要 100 毫秒甚至更多,具体取决于服务器。 socket.connect(目的地);
然后我通过DataInput/Output流与一个复杂的软件通信,所以有查询阶段、握手阶段、登录请求阶段等
有什么方法可以 "reset" 握手阶段的数据流,这样服务器就会忘记所有内容,并且套接字将再次进入第一阶段而无需执行 socket.connect(dest);再次?
谢谢。
这完全取决于协议,与套接字本身无关。
没有什么能阻止您通过套接字来回传递尽可能多的消息;除非 你的 协议(或缺少明确定义的协议)如果它没有指示消息 starts/ends.
的位置当使用 DataInput/OutputStream 时,您可以只定义一个消息 class 包含任何数据,双方将 运行 在无限循环中读取消息,处理并可能生成回复信息。