tags: OC 30 day
记忆体洩漏
指的是一个对象的记忆体没有被即时回收,在该回收的时候没有被回收,一直驻留在内存当中,直到程序结束时才被回收。
单个对象的记忆体洩漏情况
有对象的创建,而没有对应的release。retain 的次数与release的次数不匹配。在不适当的时候,为指针赋值为nil。在方法中未传入的对象进行不适当的retain。如何保证单个对象可以被回收?
有对象的创建,就必须要匹配一个releaseretain次数和release次数一定要匹配。只有在指针称为也指针的时候才赋值为nil。在方法中不要随意的为传入的对象retain。多个对象的记忆体管理
当属性是一个OC对象的时候setter方法的写法。
将传进来的对象赋值给当前对象的属性,代表传入的对象多了一个人使用,所以我们应该先为这个传入的对象发送一条retain消息,再赋值。当当前对象销毁时,代表属性指向的对象少一个人使用。就应该在dealloc中release。