引用计数,ARC
Reference Counting ,ARC
对象是在引用计数变为 0 时立即释放,还是等到遇到 release 方法(由 ARC 中的编译器自动插入)显式释放时释放?
内存管理的整个问题在于,很难制作大型程序,其中只有一个明显的地方可以释放对象。如果是这样的话,就根本不需要引用计数了!
每当创建或销毁引用时,编译器都会插入 retain
和 release
调用。当 release
被调用时,引用计数减少。如果这样做时计数达到 0,则调用 deinit
,并释放对象的内存。这是 release
调用的全部内容。
对象是在引用计数变为 0 时立即释放,还是等到遇到 release 方法(由 ARC 中的编译器自动插入)显式释放时释放?
内存管理的整个问题在于,很难制作大型程序,其中只有一个明显的地方可以释放对象。如果是这样的话,就根本不需要引用计数了!
每当创建或销毁引用时,编译器都会插入 retain
和 release
调用。当 release
被调用时,引用计数减少。如果这样做时计数达到 0,则调用 deinit
,并释放对象的内存。这是 release
调用的全部内容。