在我的应用中,我打开一个ServerSocket
并听取和处理这样的连接:
while(isRunning) {
try {
socket = serverSocket.accept();
new ThreadToHandleIt().start(socket);
} catch (IOException e) {
}
}
然后在最后(在我设置isRunning = false
之后),我关闭serverSocket,如下所示:
try {
serverSocket.close();
} catch (IOException e) {
}
我的问题是:当我在最后调用serverSocket.close()时,是否会自动关闭我为处理而生成的所有套接字?或者我是否必须自己手动关闭所有这些?
答案 0 :(得分:0)
的开发指南
http://developer.android.com/reference/java/net/ServerSocket.html#close%28%29
说
关闭此服务器套接字及其实现。此后连接到此套接字的任何尝试都将失败。
所以按照措辞,你必须单独关闭每个套接字