自由进程下载出错:无法从传输连接中读取数据???
小弟初学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个。。。都不成功。但如果是开一个自由线程就一点问题也没有,可是下载的速度真的很慢,实在是让我有点无法接受。