找回密码
 加入
搜索
查看: 1427|回复: 2

大家有没有注意AU3TCP接收数据,每次只能是62KB样子

[复制链接]
发表于 2010-2-5 19:32:53 | 显示全部楼层 |阅读模式
大家可以随便在论坛测试一个TCP传送文件的函数。
做个小试验
首先:
将发送端循环内改为
$fdata = FileRead($File, 1024 * 1024 * 10) ;每次读取字节:1024 * 1024 * 10
$i += 1 ;统计发送次数
TrayTip("发送文件次数" & $i,当前发送, 3) ;显示发送次数

客户端循环内改为
sleep(500);每次接收延时 500毫秒,为了看得更清楚
$i += 1
$sBuff = TCPRecv($ConnectedSocket, 1024 * 1024 * 10, 1)每次接收字节: 1024 * 1024 * 10
$Cur_size = Binarylen($sBuff) / 1024
TrayTip("循环此数:" &  $i, "当前接收大小:" & $Cur_size, 3)

-------------
大家会发现问题为 客户端每一次将数据 1024 * 1024 * 10 发送完成。就会等待客户端接收完成。

而客户端每一次只会接收 62KB左右的数据。TCPRecv 函数的说明是可以设置每次接收字节大小的,但这里设置为 1024 * 1024 * 10 或者其它都没用,每次都是是返回 62KB左右。

测试环境为内网KM。

大家有没有同样的问题?
发表于 2010-2-5 20:11:31 | 显示全部楼层
会不会跟网卡设置有关?一次64KB数据
 楼主| 发表于 2010-2-5 20:32:42 | 显示全部楼层
回复 2# dreamgg

应该不是网卡的设置,难道是TCP分段64KB?  那TCPRecv指定接收大小的意义何在?
这也涉及到我们的发送的数据重组的问题
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-22 15:43 , Processed in 0.073299 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表