我使用此代碼從一個URL下載文件。HttpWebResponse多個文件下載
Stream stm = myHttpResponse.GetResponseStream();
byte[] buff = new byte[4096];
Stream fs = new FileStream("c:\\file1.txt", FileMode.Append , FileAccess.Write);
int r = 0;
while((r = stm.Read(buff, 0, buff.Length)) > 0)
{
fs.Write(buff, 0, r);
}
如果我想下載20個文件(來自不同的URL),同時有可能用不到20個線程辦呢?
編輯
HttpWebResponse還沒有異步方法。我希望有一些使用BeginRead/BeginWrite的例子。我認爲他們不佔用線程池線程
難道你參考:http://stackoverflow.com/questions/15276158/infinite-loop-while-downloading-multiple-files-with-webclient/15276809#15276809?問題和Eric的建議都會幫助你選擇正確的方式。 – 2013-03-08 08:53:14