对于连接的最佳数量,您不会得到明确的答案,因为没有。它只取决于几个变量,如带宽,图像大小或您自己的耐心。你需要自己衡量一下才能正确。
做异步请求不会增加下载速度,但用户体验更好的是方式。说真的,你应该考虑为任何需要一秒以上的下载做这件事。
我总是推荐使用ASIHTTPRequest,它可以轻松实现诸如queues和progress bars之类的东西。
下面是使用该库的异步请求最简单的例子:
- (IBAction)grabURLInBackground:(id)sender
{
NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDelegate:self];
[request startAsynchronous];
}
- (void)requestFinished:(ASIHTTPRequest *)request
{
// Use when fetching text data
NSString *responseString = [request responseString];
// Use when fetching binary data
NSData *responseData = [request responseData];
}
- (void)requestFailed:(ASIHTTPRequest *)request
{
NSError *error = [request error];
}
更新:该库将不再予以支持。从1:
“请注意,我不再从事这个库 - 你可以 要考虑使用别的新项目:)”。
现在我用AFNetworking对于大多数我的项目。
有几个选项。你可以分离线程来做下载 - 这可能会让你的速度最快。 – 2011-03-03 04:06:43
感谢您的评论,但这不是我问的。我知道我可以分离线程,但我想知道是否有人知道并发URLConnection的最佳数量。 – 2011-03-03 05:57:21