【发布时间】:2015-02-02 01:19:14
【问题描述】:
使用NSURLSessionDownloadTask 连续下载文件列表的最佳做法是什么?
例如,是否最好在上一次下载完成后开始新的NSURLSession?
- (void)startDownloadWithRequest:(NSURLRequest *)request{
NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaultSessionConfiguration];
NSURLSession *session = [NSURLSession sessionWithConfiguration:config delegate:self delegateQueue:nil];
NSURLSessionDownloadTask *downloadTask = [session downloadTaskWithRequest:request];
[downloadTask resume];
}
然后在委托完成后再次调用 -startDownload 并使用不同的请求。
- (void)URLSession:(NSURLSession *)session
downloadTask:(NSURLSessionDownloadTask *)downloadTask
didFinishDownloadingToURL:(NSURL *)location{
NSURL *url = [NSURL URLWithString:@"http://asdf.com/Hello_world.pdf"];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[self startDownload:request];
}
自上次下载完成时调用-startDownloadWithRequest 以来,这种链接下载的方法是否会导致堆栈随着每个后续请求而增长?
我搜索了 SO 和其他网站,但找不到使用NSURLSessionDownloadTask 串行下载文件的替代方法。
【问题讨论】:
标签: ios nsurlsessiondownloadtask