自由进程下载出错:无法从传输连接中读取数据???

iammoden 2004-07-25 04:57:37
小弟初学vb,望各位大虾帮助帮助我。小弟跪谢啦

我想做一个自动下载一些大量的图片和视频文件,但是我发现下载速度的异常的慢。于是我就改成了多线程异步下载,通过消息机制来控制,由于小弟初学,许多概念还弄的很扎实,因此完成后的程序总是出错,然后就陷入了混乱。于是我把程序改成非异步的自由线程下载,但仍然也没成功,异常消息为:无法从传输连接中读取数据
代码如下:

public mResponseText() As Byte = Nothing

........
........

Sub startDownLoad(byval mUrl)
.................

.................

.................

Dim myWebRequest As WebRequest = WebRequest.Create(mURL)
Dim myHttpWebRequest As HttpWebRequest = CType(myWebRequest, HttpWebRequest)
Dim myWebResponse As WebResponse
myWebResponse = myHttpWebRequest.GetResponse()
Dim size As Integer
size = myWebResponse.ContentLength
Dim myHttpWebResponse As HttpWebResponse = CType(myWebResponse, HttpWebResponse)
Dim myStream As Stream = myHttpWebResponse.GetResponseStream()
Dim srReader As BinaryReader = New BinaryReader(myStream)
ReDim mResponseText(size)
mResponseText = srReader.ReadBytes(size)
srReader.Close()
myHttpWebResponse.Close()

.............

.............

.............

end sub

我最开始是开6个线程跑,每个线程都是同时启动的,下载的URL也是不同的。出错后我就改成5个,4个。。。都不成功。但如果是开一个自由线程就一点问题也没有,可是下载的速度真的很慢,实在是让我有点无法接受。
...全文
184 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
iammoden 2004-07-27
  • 打赏
  • 举报
回复
我已经测过了服务器支持多线程下载。
我测过如果把size变量改小点,分几次下,问题出现的机率就会小的多。但还是会出现问题
哎,我看我还是找个下载控件来实现算了。谢谢你了
TonyTonyQ 2004-07-26
  • 打赏
  • 举报
回复
是不是你要下载的文件所在的服务器限制了连接线程数?你可以自己开个Web服务器测试一下。

16,553

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧