Analyze检测内存泄漏的一些解决记录

  1. Variable '****' is uninitialized when captured by block
    NSUInteger shaiwuID;
    if ([shaiwu isKindOfClass:[HHGuide class]]) {
        ...
        shaiwuID = shaiwuObj.guideID;
    } else if ([shaiwu isKindOfClass:[HHDiscount class]]) {
        ...
        shaiwuID = shaiwuObj.discountID;
    }

QQ20151014-0@2x.png

出现这个问题是,在completed的block里shaiwuID有可能没有被初始化。因为shaiwuID的赋值是在if - else if 里缺少默认的赋值,把第二个条件改为esle即可。


  1. call to function 'CGImageCreateWithMask' returns a Core Foundation Object With +1 retain count
QQ20151014-2@2x.png

调用CGImageCreateWithMask方法,会返回一个对象,并且它的的引用计数器会自动加1,当对象销毁时需要进行一次release。修改如下:

    CGImageRef newImageRef = CGImageCreateWithMask(grayImage, mask);
    UIImage *grayScaleImage = [UIImage imageWithCGImage:newImageRef
                                                  scale:1
                                            orientation:self.imageOrientation];
    CGImageRelease(newImageRef);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,366评论 30 472
  • 1. 什么是 ARC? (ARC 是为了解决什么问题而诞生的?) ARC 是 Automatic Referenc...
    milk_powder阅读 3,921评论 0 5
  • ARC的本质 ARC是编译器(时)特性,而不是运行时特性,更不是垃圾回收器(GC)。 Automatic Refe...
    成热了阅读 3,795评论 0 1
  • 转:http://www.cocoachina.com/programmer/20151019/13746.htm...
    Style_伟阅读 5,144评论 0 3
  • 在南唐时,最后一位皇帝是一位著名的词人。然而他只能做一位好的人才,而做不了皇帝,他只有满呛的文采,然而他...
    明月高硕阅读 2,241评论 1 2