面试回顾之十:arc下内存泄露

2015-03-25  本文已影响181人  西门魏国

1, oc与c混编, c开辟内存没有释放free

2, 没有对对象置nil也可能产生泄露, 置nil会让对象解除所有的强引用

3, CGContext族 和 GCImage族, 要用CGContextRelease 和 CGImageRelease

4, 循环引用self , Blocks 内部使用一个实例时会retain,为了防止内存泄露。在block之前需使用_weak 若引用标示

5,timer都会对它的target进行retain,我们需要小心对待这个target的生命周期问题,尤其是重复性的timer。(NSTimer初始化后,self的retainCount加1。 那么,我们需要在释放这个类之前,执行[timer invalidate];否则,不会执行该类的dealloc方法。

上一篇 下一篇

猜你喜欢

热点阅读