dataWithContentsOfURL - 已接收内存警告处理

时间:2013-08-27 08:48:14

标签: ios memory-management

我正在使用ARC,并使用此代码从17.4 pdf加密文件加载数据。

NSData *fileData =[NSData dataWithContentsOfURL:docUrl];
NSMutableData *decPdf = // decrypt using third party library
CFDataRef PDFData = (__bridge CFDataRef)decPdf;
CGDataProviderRef provider = CGDataProviderCreateWithCFData(PDFData);
PDFDocument = CGPDFDocumentCreateWithProvider(provider);
CGDataProviderRelease(provider);
Low Memory warning应用程序在NSData *fileData =[NSData dataWithContentsOfURL:docUrl]崩溃后,在iPad1上

。在这部分中,我能以更好的方式管理内存吗?如果没有,我应该如何正确处理内存警告以防止崩溃?

1 个答案:

答案 0 :(得分:0)

作为快速检查,您可以尝试将代码封装在单独的@autoreleasepool{}块中。

@autoreleasepool {
    NSData *fileData =[NSData dataWithContentsOfURL:docUrl];
    NSMutableData *decPdf = // decrypt using third party library
    CFDataRef PDFData = (__bridge CFDataRef)decPdf;
    CGDataProviderRef provider = CGDataProviderCreateWithCFData(PDFData);
    PDFDocument = CGPDFDocumentCreateWithProvider(provider);
    CGDataProviderRelease(provider);
}