我在post中发现了相同的问题,但我认为它没有解决。
我要简短一点,这是我的代码:
try {
Socket pacConx = new Socket(ip, Integer.parseInt(port));
DataInputStream dataIn = new DataInputStream(pacConx.getInputStream());
DataOutputStream dataOut = new DataOutputStream(pacConx.getOutputStream());
while(){...}
} catch (IOException e) {
logger.fatal("error", e);
}finally{
if (dataIn != null) {
dataIn.close();
}
if (dataOut != null) {
dataOut.close();
}
if (pacConx != null) {
pacConx.close();
}
}
首先,我使用上面的代码连接到服务器,并且成功。
但是,当我尝试在一段时间后重新连接到相同的服务器和端口时,我无法重新连接。
显然,第一个套接字在serverSide中仍然是“ Activity 的”。
是解决我的难题的办法吗?
有没有办法我可以关闭另一个“ Activity ”套接字?
最佳答案
尝试
...
dataOut.flush();
dataOut.close();
...
粘贴错误消息或/和完整堆栈跟踪。