问题描述
- Java Socket 读取TCP服务端数据包不完整
-
Java Socket 读取TCP服务端数据包不完整:除了利用数据包大小循环读取输入流的得到完整的数据外,还有其他什么方法?数据包在网络传输的过程中,数据传递到客户端基本处于“无序”态。除了开辟一块内存按数据包的顺序存放外,还有其他更好的方案么?
解决方案
TCP 因为是长连接的,肯定是有序的。数据接收不完整,这种现象在通讯中很常见的,是必须代码处理。
解决方案二:
TCP是有序的吧?UDP才是无序的。
解决方案三:
Tcp是连续,并有吃重传机制。
解决方案四:
提问人的基础知识不扎实啊。
TCP是长连接,数据长度无限。
UDP是短连接,长度有限。
有序性:
TCP按发送的次序接受数据,在这个意思上是有序的。
UDP不按发送数据的次序接受数据,在这个意义上是无须的。
时间: 2024-12-03 01:16:06