Ios CGDataProviderCopyData保留数据
仪器显示我有很多使用CGDataProviderCopyData创建的持久分配 我正在调用CGDataProviderCopyData,然后使用CFRelease释放数据引用。我使用一个UInt8点指向带有CFDataGetBytePtr的数据 此代码是在UIImaveView类别中完成的Ios CGDataProviderCopyData保留数据,ios,memory-management,core-graphics,core-foundation,Ios,Memory Management,Core Graphics,Core Foundation,仪器显示我有很多使用CGDataProviderCopyData创建的持久分配 我正在调用CGDataProviderCopyData,然后使用CFRelease释放数据引用。我使用一个UInt8点指向带有CFDataGetBytePtr的数据 此代码是在UIImaveView类别中完成的 CGImageRef imageRef = self.image.CGImage; CGDataProviderRef provider = CGImageGetDataProvider(i
CGImageRef imageRef = self.image.CGImage;
CGDataProviderRef provider = CGImageGetDataProvider(imageRef);
CFDataRef pixelData = CGDataProviderCopyData(provider);
const UInt8* data = CFDataGetBytePtr(pixelData);
// do stuff with data...
CFRelease(pixelData);
如果我使用CFRelease,我不确定为什么会保留pixelData。您应该发布提供程序:
CGDataProviderRelease(provider);