我面临套接字的一个小问题。
此方法大约需要100毫秒甚至更多,具体取决于服务器。 socket.connect(目标);
然后我通过DataInput / Output流与软件进行通信,因此存在查询阶段,握手阶段,登录请求阶段等。
有没有什么方法可以从握手阶段“重置”数据流,这样服务器就会忘记所有内容,而套接字将再次处于第一阶段而不执行socket.connect(dest);再次?
感谢。
答案 0 :(得分:3)
这完全取决于协议,它本身与套接字无关。
答案 1 :(得分:0)
没有什么可以阻止你通过套接字来回传递尽可能多的消息;除非您的协议(或缺少明确定义的协议),否则它不会指示消息的开始/结束位置。
使用DataInput / OutputStream时,您只需定义一个包含任何数据的Message类,并且双方只会在无限循环中运行,读取Message,处理并可能生成响应消息。