当前页面: 开发资料首页 → J2SE 专题 → socket接收服务器的消息,如何实现在10秒内如果服务器没回消息,就断掉socket连接,结束接收状态?
socket接收服务器的消息,如何实现在10秒内如果服务器没回消息,就断掉socket连接,结束接收状态?
摘要: socket接收服务器的消息,如何实现在10秒内如果服务器没回消息,就断掉socket连接,结束接收状态?
相关客户端socket接收代码:
BufferedReader in
= new BufferedReader(new InputStreamReader(socket.
getInputStream()));
String line;
while ((line = in.readLine()) != null) {
line = in.readLine();
System.out.println(-#34;服务器返回消息:-#34;+line);
}
难道是问题难度大,没人回答??
socket有超时的设置,再看看书
时间是毫秒为单位
public synchronized void setSoTimeout(int timeout) throws SocketException {
if (isClosed())
throw new SocketException(-#34;Socket is closed-#34;);
if (timeout -#60; 0)
throw new IllegalArgumentException(-#34;timeout can-#39;t be negative-#34;);
getImpl().setOption(SocketOptions.SO_TIMEOUT, new Integer(timeout));
}