【发布时间】:2013-11-02 07:15:07
【问题描述】:
这是我的代码:
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;
}
我正在创建多个连接以从同一流中并行下载数据。但是,它只返回一次流并在所有后续尝试中返回 null,直到第一个返回的流关闭。
此外,Stream 支持 Accept-Ranges 和 bytes。
所以,我的问题是如何建立多个连接或者我上面的代码有问题吗?
更新:response 设置为 null 由于超时异常,或者在关闭之前的连接(响应流)之前没有响应。
【问题讨论】:
-
I am creating multiple connections to download data in parallel到底在哪里?我在您的代码中没有看到它。 -
我在多个线程上调用
CreateLink()并从返回的流中并行下载