内存管理 管理范围:任何继承于 NSObject的对象 原理: 每一个对象都有引用计数器 当使用alloc new 和 copy创建对象时引用计数器被设置为1 给对象发送一条retain消息 ,引用计数器加1 — 给对象发送一条relrase消息,引用计数器会减1 计数器为0时,对象会被回收 只要用alloc new创建新对象,那么你就有责任做一次release 不可以再操作已经被释放的对象,不然会发生野指针错误 在对象释放前操作对象 你想使用某个对象,就应该放对象的计数器+1 你不想使用某个对象,就应该让对象的计数器-1
成员变量内存管理(如果成员变量是对象,才需要管理) 哪里有 alloc new 哪里有 release release 旧对象 retain新对象 dealloc 方法就是释放当前拥有的所有对象
nonatomic:性能高 多线程不加锁 —诺米拖米克 atomic 性能低,多线程加锁 -啊拖你克
autorelease 会将对象放到一个自动释放池中 当自动释放池被销毁,会将池里的所有对象的一次release操作
|