TCP在传输时为什么要把基础数据类型做转换为Byte数组

来源:4-8 案例实操-TCP基础数据传输-2

LINGMAR

2018-11-15

比如int占用4个字节,转换为byte[]后还是占用4个字节,Long,Double同理
这样看来,我不论是传Byte数组还是基础数据类型,所占用的空间大小都相同
那么为什么要进行转换呢,或者说这样做有什么好处?

写回答

1回答

Qiujuer

2018-11-15

在网络传输上都是基于byte的 不转换如何传输了,你说是吧。

咱倒是希望基础类型能直接传输呢,但是底层框架本身是不支持的,对于底层来说就是byte而已,如果咱们不转换那么这个工作就要底层API来做,但是这就让底层API非常累赘了。

其实还有一点原因是,发送数据时往往是一批数据发送更加高效,而不是一点就发送一次,如果直接丢基础数据进去,意味着丢一次就要触发一次发送这就大大降低了效率。

所以往往是先准备好所有都byte数组数据,然后一批发送。

2
1
LINGMAR
非常感谢!
2018-11-15
共1条回复

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

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

2316 学习 · 476 问题

查看课程