谁能告诉我我在这里遇到的问题是什么?

即使您可能启用了 ARC,它也仅涵盖 Cocoa / Objective-C 对象。Core Foundation 和 Core Graphics API 是不同的,您仍然需要最终显式释放内存以用于创建的任何对象。
在您的代码中,您正在做一个createCGIImage:没有平衡发布的“”。
一个版本看起来像:
CGImageRelease(myImageRef)
因此,要正确执行此操作,请执行以下操作:
CGImageRef myImageRef = [context createCGImage: outputImage fromRect: outputImage.extent];
UIImage * imageTemp = [UIImage imageWithCGImage: myImageRef];
CGImageRelease(myImageRef);
ARC 与您处理 CoreFoundation 对象无关。您需要将其分配给一个CGImageRef变量,然后使用CFRelease(variableName).
IE
CGImageRef cgImage = [context createCGImage:...];
// rest of your code here
CFRelease(cgImage);
该[context createCGImage:fromRect:]方法返回一个保留的CGImageRef。修复您的内存泄漏,您需要保存对它的引用CGImageRef并在完成后释放它:
CGImageRef imageRef = [context createCGImage:outputImage fromRect:outputImage.extend];
imageTemp = [UIImage imageWithCGImage:imageRef];
CGImageRelease(imageRef);