這裏是我的代碼:無法建立多個連接,下載文件在C#
public static Stream CreateLink(Uri path, int start, int end)
{
HttpWebResponse response;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(path);
request.Timeout = 30000;
request.AddRange(start, end);
try
{
response = (HttpWebResponse)request.GetResponse();
}
catch
{
response = null;
}
if (response != null)
{
var stream = response.GetResponseStream();
return stream;
}
return null;
}
我創建多個連接在同個stream.However並行下載數據,它是一次返回流和返回null在所有後續嘗試中,直到第一個返回的流被關閉。
此外,Stream支持Accept-Ranges
爲bytes
。
所以,我的問題是我怎麼能做多個連接或在我的上面的代碼中是錯誤的?
更新:
response
設置爲null由於超時異常或不準確的反應越來越直至以前的連接(響應流)被關閉。
'我創建了多個連接來並行下載數據到底在哪裏?我沒有在你的代碼中看到它。 – PoweredByOrange
我在多線程上調用'CreateLink()'並從並行下載返回的流 – userda