IndyUDPServer怎么样才能读取real类型的数据?(100分)

  • 主题发起人 主题发起人 difilwy
  • 开始时间 开始时间
D

difilwy

Unregistered / Unconfirmed
GUEST, unregistred user!
IndyUDPClient发的数据包是real类型的。
IDUDPClient1.SendBuffer(buf,1000); 其中buf:array [0..1000] of real;
接收端怎么恢复?
麻烦给出个用udp收发real类型数组的例子,谢谢!
 
一样啊,
从流里一样用buf读出来呀
buf:array [0..1000] of real;
AStream.Readbuf(buf,AStream.Size);
 
SendBuffer用法不正确
IDUDPClient1.SendBuffer(buf, Sizeof(buf));

 
对对,木子说的对,你发送部分的代码有错误
 
弟兄们,通常每个UDP包最多可以发大概1500字节,1000个real要4000字节,
请注意,udp并不保证先发的包一定先受到,所有如果你把4000字节分4个
UDP包发送的话,还有考虑好接收方如何重组这些碎片.
 
呵呵,UDP包最大不要超过500字节,尤其是INTERNET上
 
to 张无忌 木子 谢谢了,现在确实能收到real类型的了。
不过就象sofox所说的,我在发送端每次发送大概200k字节的数据,那怎么才能保证正确接收?
即使按顺序到的话是不是也得收好几次才行?
 
UDP不能保证顺序到达,用TCP把,或者用UDP自己定个简单的协议
 
是不是得用tcp?这样的话速度可能就降低了很多
 
减低不聊多少的
 
好的,我试试吧,谢谢各位!
 
后退
顶部