关于IOS的内存泄露

ARC模式下是隐式管理对象计数器的。也就是说一般不需要我们去关心对象释放问题,系统会做。

1.对象创建,如果一个对象会在多个地方,多次被调用。那么最好用单例,或者能够保证在下一次创建之前得到释放。比如说网络请求,hud。

2.循环引用,一般出现在协议和block中。简单处理就是weak就行。

3.NSTimer,第三种其实可以解释为需要在合适时间释放的对象。通知,地图也算是这一类的,就是我们要在不需要他们的时候及时移除掉。

4.非OC对象内存处理,这种多是C语言框架的一些对象。比如,绘图,音频一类的。

CGImageRef ref = [context createCGImage:Image fromRect:Image.extent];

CGImageRelease(ref);

5.比较少见,大的循环。需要添加释放池,系统会在合适的时间释放不需要的变量内存。


你可能感兴趣的:(关于IOS的内存泄露)