gpt4 book ai didi

objective-c - 是否必须发布 CGImageGetColorSpace(image) 的结果?

转载 作者:太空狗 更新时间:2023-10-30 03:27:56 26 4
gpt4 key购买 nike

我正在缩放 CGImageRef。我在网上找到了各种这样开头的代码示例:

CGColorSpaceRef colorspace = CGImageGetColorSpace(image); // "Get" color space

CGContextRef context = CGBitmapContextCreate(NULL, width, height,
CGImageGetBitsPerComponent(image),
CGImageGetBytesPerRow(image),
colorspace,
CGImageGetAlphaInfo(image));

CGColorSpaceRelease(colorspace); // Really?

如您所见,colorspace 已发布。但是,当我这样做时,我的代码大部分时间都能正常工作,但偶尔会崩溃,因为有时那个颜色空间实例已经消失了。 API 文档说:

You are responsible for retaining and releasing the color space as necessary.

这是否意味着我必须释放它?我假设约定是只有名称中带有“Create”的调用结果返回必须显式释放的对象。这是否意味着网络上的示例在发布 CGColorSpaceRef 时完全错误

最佳答案

正如 API 文档所说,您有责任保留并根据需要释放颜色空间。 IE。如果需要,请保留它。如果你不保留,就不要释放。 Read more about it here

关于objective-c - 是否必须发布 CGImageGetColorSpace(image) 的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5269815/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com