更新:
我写了一个很简单的下载代码:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSURLRequest* request = [[NSURLRequest alloc] initWithURL:[NSURL URLWithString"http://xxxx.s3.amazonaws.com/products/ipad/xxxx.mp4"]];
for(int i=0; i<4; i++){
NSString *filePath = [NSString stringWithFormat"%@/%@", documentsDirectory,[NSString stringWithFormat"xxxx%d.mp4",i]];
AFDownloadRequestOperation* operation = [[AFDownloadRequestOperation alloc] initWithRequest:request targetPath:filePath shouldResume:YES];
operation.outputStream = [NSOutputStream outputStreamToFileAtPath:filePath append:NO];
[operation setShouldOverwrite:YES];
[operation setProgressiveDownloadProgressBlock:^(AFDownloadRequestOperation *operation, NSInteger bytesRead, long long totalBytesRead, long long totalBytesExpected, long long totalBytesReadForFile, long long totalBytesExpectedToReadForFile) {
NSLog(@"%f", ( totalBytesRead / (float)totalBytesExpected));
}];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"finished");
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(error.description);
}];
[[NSOperationQueue mainQueue] addOperationperation];
}
我在我的项目 viewDidLoad 中写了它,注释掉了所有其他代码。内存使用量仍然相同并且还在增加:
我创建了一个新项目,并在新项目中编写了完全相同的代码。并且内存使用情况是:
哪个好。但是我不明白为什么在实际项目中会有所不同?
Best Answer-推荐答案 strong>
我猜你打开了僵尸模式。
产品 -> 方案 -> 编辑方案
取消选中选项[启用僵尸对象]
关于ios - 使用 AFNetworking 下载文件时出现内存警告,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/19159932/
|