我想区分服务器连接关闭的客户端套接字的例外,就好像服务器套接字由于空闲超时而关闭,原因必须在客户端生成为空闲超时异常。与连接失败异常等类似,连接失败也是如此。请帮我解决这个问题。提前致谢。如何区分服务器套接字连接在客户端套接字上关闭的异常?
1
A
回答
1
如果服务器正确地关闭了套接字,那么在客户端只有一个可能的异常,而不是客户端必须捕捉并找出的一系列不同的异常。只有一个EOS指示:read()返回-1,readLine()返回null,readXXX()为任何其他X引发EOFException。
如果由于网络故障导致连接中断,客户端通过文本“连接重置”来获得IOException。如果连接保持运行但服务器没有发送数据,并且客户端有读取超时,则客户端将收到SocketTimeoutException。这些都不意味着服务器已经关闭了连接(尽管服务器可能导致连接重置,我不会在这里文档化)。
如果您需要知道服务器为什么关闭了套接字,它将不得不通过消息告诉您。
1
相关问题
- 1. Java套接字 - 关闭到服务器套接字的telnet客户端连接
- 2. 同时关闭服务器和客户端套接字连接
- 3. 服务客户端在perl后套接字连接关闭
- 4. 服务器异步套接字 - 检测客户端的关闭连接?
- 5. 异步客户端套接字关闭?
- 6. 服务器套接字只在客户端套接字关闭后打印
- 7. 连接多个客户端的异步套接字服务器
- 8. java:关闭客户端套接字重置服务器套接字
- 9. Javascript客户端如何连接到PHp套接字服务器?
- 10. java套接字服务器和套接字客户端之间的连接
- 11. C套接字服务器,Java套接字客户端:阻塞!
- 12. Python套接字客户端到Java套接字服务器
- 13. 将C套接字客户端连接到C#套接字服务器
- 14. 套接字服务器未与JavaScript套接字客户端连接
- 15. 连接NodeMCU Lua套接字客户端与node.js套接字服务器
- 16. 我无法关闭服务器和客户端之间的套接字连接
- 17. 套接字关闭异常
- 18. PHP套接字服务器/客户端
- 19. 客户端服务器udp套接字
- 20. 套接字java客户端服务器
- 21. 客户端 - 服务器套接字
- 22. 服务器/客户端套接字
- 23. 客户端服务器套接字C#
- 24. Python服务器客户端套接字
- 25. Java套接字客户端/服务器
- 26. java.net.SocketException异常:套接字关闭TCP客户端服务器通信
- 27. Java客户端服务器“套接字已关闭”
- 28. 如何在等待连接时关闭服务器套接字?
- 29. 无法关闭异步C#服务器套接字连接
- 30. 客户端/服务器套接字异常问题
请参阅http://stackoverflow.com/questions/151590/java-how-to-detect-a-remote-side-socket-close&http://stackoverflow.com/questions/155243/why-is- it-impossible-without-attempting-io-to-detect-that-tcp-socket-was-grac – Zaki