【发布时间】:2011-07-29 09:48:17
【问题描述】:
我的应用需要在启动时下载一些数据(大约 50k)。我目前正在评估几种情况下的下载速度,尤其是连接速度较慢的情况。
我有一些简单的测试代码如下所示。一个按钮开始下载文件并开始测量,测量结束是下载完成时(这一切都在主线程中运行)。
第一次按下按钮时,下载的时间比我随后按下按钮(比如 2 秒后)要长得多。如果我等10秒再推,时间又会变长。
这是为什么?建立初始连接是否需要花费那么多时间?我知道下面的代码非常原始。什么是更快建立连接的最佳方式。
编辑:我假设这肯定与 ISP/电话公司处理 Internet 连接的方式有关。可能是,当我不积极使用网络时,我的 ISP 的 Internet 连接会被缩减到某个最低限度?然后,当我下载某些东西时,会添加更多“频道”以提高速度吗? 我检查了几张 SIM 卡:数据速率越高,行为越一致。比如说,如果我使用品牌 A SIM,如果有上述行为,如果我使用品牌 B(高级),一切都很好。
在此先感谢
NSURL *url = [NSURL URLWithString:@"http://myServer/testFeed1.zip"];
NSData *urlData = [NSData dataWithContentsOfURL:url];
…保存文件
【问题讨论】:
-
下载的文件是否可能缓存在某处?
-
可以缓存在透明的 ISP 上运行 HTTP 代理或类似的。
标签: ios download connection