从客户端关闭套接字连接的最安全方法是什么。首先关闭输入或立即关闭()连接?
答案 0 :(得分:0)
如果您的协议(TCP顶部)不包含任何关闭会话的消息/握手,则必须通过关闭TCP连接来执行此操作。
关闭TCP连接有两种方法:
read()
的{{1}}返回-1; InputStream
的{{1}}会引发异常。两者都可以在带有Socket的close()函数的java中完成。
优雅是默认值。如果在关闭()之前完成read()
,则表示不合适。
答案 1 :(得分:0)
关闭套接字已经关闭了输入和输出。你不需要明确地做其中任何一个。
答案 2 :(得分:-2)
我更愿意发表评论,但由于我缺乏声誉,我不能,这不是一个完整的答案,对不起:
我相信总会引发一个异常,你应该在function()中捕获一个IOException,它从套接字读取器中获取数据。这种方式IOException意味着套接字关闭,任何其他类型的异常都是错误。