如何衡量ios nsurlsession下载任务速度?

时间:2016-06-17 08:05:55

标签: ios nsurlsession

如何衡量下载任务速度:

我认为的方法是:

计算最后3s平均速度,并在3s后重置收到的字节,并启动一个每0.8秒调用一次的NSTimer。

但是这会导致一个问题:在3秒后立即调用NSTimer,收到的字节已经重置为0,但我想要一个平滑的速度。

1 个答案:

答案 0 :(得分:0)

首先,使用NSURLSessionDelegate。如果您正在使用completionHandler:将不会调用委托方法。然后在:

-(void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask didReceiveData:(NSData *)data

您可以添加自己的[data length]计数器。使用NSTimer以同步的方式收集并重置它,你就拥有它。请记住,如果您需要更精确地存储精确的测量时间,NSTimer不会完全按照指定进行闪光