为了账号安全,请及时绑定邮箱和手机立即绑定

SERVER端先接收信息后发送信息,为什么在接收信息后调用了shutdownInput()

而在给客户端发送信息后(响应客户端),却没有调用shutdownOutput()呢?

正在回答

4 回答

发送完或者接收完之后就关闭这两个流。调用对应的shutdownoutput()和shutdowninput()方法。

0 回复 有任何疑惑可以回复我~
#1

昵称是JaVa 提问者

你回答的很详细,我都能看懂,对此表示感谢。再次看到我提的问题,发现确实是我没有表达清楚,所以重新修改了下问题,如果这次你看懂了,希望不吝赐教。
2017-03-25 回复 有任何疑惑可以回复我~
#2

ELLIOT4038596 回复 昵称是JaVa 提问者

还是需要调用shutdownOutput啊。你看老师没有调用,可能是他忘记了吧,你可以去看老师最后的总结视频。其实这些都不是太重要,你只要吧socket关闭了 其他关联的IO流都是会关闭的。
2017-03-25 回复 有任何疑惑可以回复我~
#3

昵称是JaVa 提问者 回复 ELLIOT4038596

好的,明白了。
2017-03-26 回复 有任何疑惑可以回复我~

在if里加了括号后,加载的效果好多了,不是那种一滚动就去加载的那种了

0 回复 有任何疑惑可以回复我~

也就是向外发送的信息要放入Output流再write,接收的信息要放入Input流,再read。

0 回复 有任何疑惑可以回复我~

同学你的问题我看的不是太懂,大概能明白你的意思吧。你没真正的理解TCP/IP 通信中的信息的交互吧。

比如你在 server端向外发出一条信息,先是放入OutputStream流中,最后是调用PrintWriter方法写入。发送完之后紧接着关闭这个Output这个流(调用调用shutdownoutput())。而客户端接受到这条消息是把服务器端传送来的数据先放入InputStream流中,然后再放入InputStreamReader里读,接着进入缓存区BufferedReader,然后readLine()方法转换成字符。 反之亦然。 我说的这么详细你能懂吗。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

SERVER端先接收信息后发送信息,为什么在接收信息后调用了shutdownInput()

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信