使用阻塞式的socket连接时候,如果客户端发起请求,而服务端没有响应。
这时候程序就会停止不前,设置socket超时连接就能很好的解决该问题.
详细代码如下:
try{
mSocket = new Socket(); //实例化socket
SocketAddress socketAddress = new InetSocketAddress(mDevice.getIp(),mDevice.getPort()); //获取sockaddress对象
mSocket.connect(socketAddress,5000); 连接socket并设置连接超时为5秒,如果5秒后服务端还没有响应,则弹出异常信息。
}catch (IOException e) {
mHandler.sendEmptyMessage(MonitorActivity.MSG_NET_ERROR);
return;
}
|