我有两个android设备,A是服务器,B是客户端,并且与socket连接, 服务器/客户端如何相互断开或关闭,
我尝试过isconnect(),但没用。
答案 0 :(得分:4)
如果对等方正常断开连接:
read()
将返回-1 readLine()
将返回null readObject(),
readUTF()
,readXXX()
任何XXX都会抛出`EOFException 如果对等体异常断开,连接变坏等,任何读取或写入方法都将抛出IOException,
,但没有读取超时的读取可能会永久阻塞:这就是为什么你应该总是使用阅读时间(通过setSoTimeout()
)。
isConnected()
仅告诉您是否已连接或接受套接字。 isClosed()
只会告诉您是否曾关闭它。这些API会告诉您Socket
,而不是连接。