关于 Packet 中的 Stream

来源:9-3 文件消息模型基础实现-1

磊磊要酷酷滴

2019-05-03

  • 为什么 SendPacket 中维护的是 InputStream,而 ReceivePacket 中维护的是 OutputStream;
  • InputStream 和 OutputStream 中的 in 和 out 是相对于什么而言?
写回答

1回答

Qiujuer

2019-05-03

这个点要理解可以这么来:
SendPacket 是用来发送数据的,所以他需要做的事情是给咱们的整个调度系统提供数据,既然要提供数据,那么他就是一个“输入源”,所以他就是InputStream,在系统调度中就是通过得到这个内部的InputStream来读取数据,也就是从SendPacket中取出数据。


反过来说,ReceivePacket是用来接收数据的,所以整个调度系统中的数据最终的输出点就是ReceivePacket,比如此时我收到了字符串数据“AAAAA”,那么我要把这个数据传输给ReceivePacket。所以ReceivePacket需要提供一份OutputStream,因为我们拿到这个OutputStream之后就可以往其中写数据,写的数据就是写给ReceivePacket。

1
4
Qiujuer
回复
磊磊要酷酷滴
是的哈,非常正确。
2019-05-04
共4条回复

Socket网络编程进阶与实战 系统掌握Socket核心技术

理论+实践,系统且深入掌握Socket核心技术,从容应对各种Socket应用场景的不二之选

2319 学习 · 476 问题

查看课程