ARC下的iOS 5和6免费malloc内存

时间:2013-04-22 20:18:52

标签: ios objective-c memory malloc automatic-ref-counting

如何在ARC下的Objective-C中释放动态分配的内存?

dynamically我的意思是用malloc分配给某些ivar的内存。

至少通过我的测试,

deallocviewDidUnload不再被调用。

那么何时以及如何开始释放内存时不再需要视图控制器?

我所做的是创建名为Releasable的协议(我从C#中窃取的一个想法),它具有单一方法-(void) release。 当不再需要对象时,这将由一些外部代理调用。

1 个答案:

答案 0 :(得分:7)

仍然在ARC下调用

dealloc。您只是没有明确调用[super dealloc]。如果未调用dealloc,则某些内容仍然具有对象实例的引用。在项目中运行分析器,看看会出现什么。

viewDidUnload仍会在iOS 5下调用,但不会在iOS 6下调用。

完全不需要添加协议和release方法。