【发布时间】:2012-11-30 04:07:40
【问题描述】:
所以 xcode 工具告诉我下面的代码有泄漏
imageRef = [[_originalGridView image] CGImage];
_width = CGImageGetWidth(imageRef);
_height = CGImageGetHeight(imageRef);
//leak?
pixelData = (NSData*)CGDataProviderCopyData(CGImageGetDataProvider(imageRef));
rawData = (unsigned char*) [pixelData bytes];
问题是如果我尝试释放 pixelData 会崩溃,我在这里有点不知所措。有没有另一种方法可以做我目前正在做的事情,或者我应该释放我没有的东西。
编辑:对于所有说我应该发布像素数据的人,这是我尝试时会发生的情况
malloc: * 对象 0x547b000 的错误:未分配被释放的指针 * 在 malloc_error_break 中设置断点进行调试
【问题讨论】:
-
您如何以及在何处发布pixelData,因为您做拥有它,而且它是 泄露核心基础类型。
-
没有,因为如果我在任何地方调用 release 就会崩溃
标签: ios memory-management