首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我到底有没有漏水?

我到底有没有漏水?
EN

Stack Overflow用户
提问于 2013-04-05 00:18:44
回答 1查看 123关注 0票数 0

在xcode中执行Analyze时,我收到了一个泄漏警告,该警告如下图所示

但是,如果我使用Instrument进行检查,我根本没有收到任何关于“泄漏”的警告。图片如下所示

问:我到底有没有泄漏。

Common.m

代码语言:javascript
复制
void drawLinearGradient(CGContextRef context, CGRect rect, CGColorRef startColor, CGColorRef  endColor) {
    CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
    CGFloat locations[] = { 0.0, 1.0 };

    NSArray *colors = [NSArray arrayWithObjects:(__bridge id)startColor, (__bridge id)endColor, nil];

    CGGradientRef gradient = CGGradientCreateWithColors(colorSpace, (__bridge CFArrayRef) colors, locations);

    CGPoint startPoint = CGPointMake(CGRectGetMidX(rect), CGRectGetMinY(rect));
    CGPoint endPoint = CGPointMake(CGRectGetMidX(rect), CGRectGetMaxY(rect));

    CGContextSaveGState(context);
    CGContextAddRect(context, rect);
    CGContextClip(context);
    CGContextDrawLinearGradient(context, gradient, startPoint, endPoint, 0);
    CGContextRestoreGState(context);
    CGGradientRelease(gradient);
    //CGColorSpaceRelease(colorSpace);--------> this will fix leaking

}
EN

回答 1

Stack Overflow用户

发布于 2013-04-05 02:12:48

  • 展开这个小三角形,Xcode将向您显示导致泄漏的执行路径
  • 是的,代码正在泄漏颜色空间
  • 分配图看起来确实像是泄漏,但对于颜色空间来说,这是相当陡峭的,除非您正在创建大量的

可能会有所帮助。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15816472

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档