局域网批量传输文件的过程中TCPAccept阻塞是什么原因?
简单接收代码(批量接收时较复杂一些):TCPStartup(); 开始 TCP 服务
$IP = @IPAddress1 ;IP
$MainSocket = TCPListen($IP, 65432)
While 1
Sleep(10)
$Indextext = TCPAccept($MainSocket)
$recv= TCPRecv($Indextext, 1024 * 1024)
If $recv<> "" Then
;写文件
EndIf
WEnd
测试发现,在批量接收时个别文件在接收过程中出现阻塞,是端口堵塞?此时$Indextext=-1,$recv 为空 (发送端仍在不断发送数据).若重启TCP服务:TCPShutdown ( ),TCPStartup ( )
则又可以成功接收数据,但会丢失重启过程中的部分数据。阻塞是什么原因?如何解决阻塞问题,使文件完整接收呢? 论坛有相关的例子,你搜索一下看看! 回复 2# hzxymkb
搜索不到啊。。。 ^_^,试试用异步Socket~ 回复 4# republican
不懂啊,能介绍一下吗?
页:
[1]