0 0

socket 收发数据问题(请各位大虾看详细描述)10

问题是这样的:
我通过socket的server端,通过write()和flush()方法,向socket的client发送数据。有一天我忽然发现,我明明通过server向client发了两批数据,但是client缺只收到了一批数据,经过检查发现,数据没有丢失,都收到了,但是socket居然自作主张把两批数据混合为一批数据了。

请问这个问题有没有办法解决?谢谢!

问题补充:发送数据用的是new BufferedOutputStream(this.client.getOutputStream());
然后使用BufferedOutputStream的write和flush方法
2012年6月08日 11:20

1个答案 按时间排序 按投票排序

0 0

tcp由于长度,会将报文分批或者合并一起发送这个很正常的。你程序内部要找判断报文的结束标志。

2012年6月08日 12:07

相关推荐

Global site tag (gtag.js) - Google Analytics