通过ASIHTTP请求并行下载的最大文件数

时间:2012-03-08 13:23:21

标签: iphone objective-c ios ipad

我正在通过ASIHTTP请求下载音频文件。当我并行下载三个或更少数量的文件时,它工作正常,但是当我尝试并行下载更多第四个文件时,它会在项目中的所有tableViews上显示一个活动指示器而不显示表数据? 这是我的代码

UIProgressView *_progressBar = [[UIProgressView alloc] init];
    ASIHTTPRequest *request;
    request = [ASIHTTPRequest requestWithURL:[NSURL URLWithString:trimmedString]];
    [request setDelegate:self];
    [request setDownloadDestinationPath:filePath];
    [request setDownloadProgressDelegate:_progressBar];
    [request setShowAccurateProgress:YES];
    [request setShouldContinueWhenAppEntersBackground:YES];
    [request setDidFinishSelector:@selector(downloadedSuccessfully:)];
    [request setDidFailSelector:@selector(downloadedFailure:)];
    [request startAsynchronous];

我对Iphone开发没有那么多经验,所以请随时提供帮助。 提前谢谢。

1 个答案:

答案 0 :(得分:2)

我想最好使用ASINetworkQueue并通过将其作为操作添加到队列来执行ASIHTTPRequest

ASINetworkQueue(如NSOperationQueue)具有maxConcurrentOperationCount属性。我使用了超过5个并发操作,它们真的同时运行。