4
我在仪器中分析我的应用程序,并且当我使用AFNetworking获取远程图像时,发现了CFNetwork分配令人不安的数量。提取图片时CFNetwork内存峰值
在一个实例中,我看到了89 MB的分配(图像大小仅为200 KB左右)。我附上了一张截图来演示。有没有其他人注意到这一点?内存被适当释放,但我无法理解为什么这首先发生。
在此先感谢。
我在仪器中分析我的应用程序,并且当我使用AFNetworking获取远程图像时,发现了CFNetwork分配令人不安的数量。提取图片时CFNetwork内存峰值
在一个实例中,我看到了89 MB的分配(图像大小仅为200 KB左右)。我附上了一张截图来演示。有没有其他人注意到这一点?内存被适当释放,但我无法理解为什么这首先发生。
在此先感谢。
我在iOS 8上看到同样的问题。它不会在任何版本的iOS 7上发生。在模拟器上它的132kb,在一个设备上它的144kb。
这似乎对与此有关的问题:
https://github.com/AFNetworking/AFNetworking/issues/2314
我执行HTTP GET在这个例子中使用nsurlsession。如果你打的地方不发送保持活动,即google.com,它不会malloc那些kb。但是,如果你打到一个发送保持活动的地方,它会。
NSString * url = [NSString stringWithFormat:@"%@%.20f", @"http://someplace.com/?test=", (double)[[NSDate date] timeIntervalSince1970];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url]];
[request setHTTPMethod:@"GET"];
[[[NSURLSession sharedSession] dataTaskWithRequest:request completionHandler:nil] resume];
我要补充一点,我只是观看“所有堆分配”,而不是“所有的堆和匿名VM” – Ricky 2014-10-20 05:30:46
你找到任何解决办法或任何机会,以解决这个内存增量?我面临同样的问题。 – 2015-05-29 10:59:19
不@Rudeboy,刚刚结束了对它的容忍。 – Ricky 2015-05-31 23:17:16