<1>Socket最大的一个数据包是8K,如果你发送的数据超过这个值,那么将自动分包发送;
<2>如果要实现正确无误地接收数据源发送的所有数据,那么做些处理是十分必要的。主要的
方法是在你的数据末尾添加结束标志(这是数据发送端要做的处理),在数据接收端要做的
处理是:只要网络连接是正常的(即:Socket.Active:= true)那么就要不断地扫描缓冲区
知道接收到结尾标志的时候就知道已经结束到完整的数据了。具体怎么实现,可是方法多
样呀!
<2>如果要实现正确无误地接收数据源发送的所有数据,那么做些处理是十分必要的。主要的
方法是在你的数据末尾添加结束标志(这是数据发送端要做的处理),在数据接收端要做的
处理是:只要网络连接是正常的(即:Socket.Active:= true)那么就要不断地扫描缓冲区
知道接收到结尾标志的时候就知道已经结束到完整的数据了。具体怎么实现,可是方法多
样呀!
解决方案 »
- fastReport 打印图形报表
- 在厦门的程序员请留下联系方式
- 用华为SMEIDll.dll发送短信,SubmitA提交成功,但是手机却收不到怎么回事?
- 请教,一个非常奇怪的问题,为什么 N14Click(Sender: TObject)能用,而N15Click(Sender: TObject)却不行呢?谢谢
- ★Delphi在98和XP下可以共享安装吗?
- 如何把12个ip整合成一个IP来访问
- delphi 中client/sereve的范例
- 投影问题!!很急……
- 谁知道如何让系统任务栏(System Tray)接受文件Drop?
- 怎样模拟键盘操作
- 将CHM帮助文件转化成RTF文件?(有源码的得分)
- 数据表的字段名用中文究竟会发生什么问题?
其中用到了TWinSocketStream
接收数据用:Stream.read(...) //stream是TWinSocketStream类型的
我想知道用这种方式接收的数据是否会出现'断流'
比如说:对方传来123456789
我收到1234,而56789没有收到的情况
因为我怀疑Stream是以流的方式传输的,可能会出现断流,我的观点对吗?
UDP就不保险了