ARC中的[[something retain] autorelease]
等价于什么?
我有一个问题,其中类DBRequest调用我的委托(delegate)来表示完成。然后,我的代表将DBRequest实例设置为nil,从而将其取消分配。但是,当堆栈从我的委托(delegate)中弹出并跳回到DBRequest时,它当然会崩溃。
如果我不在ARC中,则在我的委托(delegate)中,我只需要在发布对它的引用之前先执行[[theDbRequest retain] autorelease]
,这样它就可以生存足够长的时间,直到下一个运行循环自动释放它为止。
我应该在ARC中做什么?
最佳答案
如何添加类似的东西
__strong DBRequest * myself = self;
[delegate reportDone];
我认为这将使自对象增加,直到函数结束,以防止其过早死亡。
关于iphone - ARC中的 '[[something retain] autorelease]'等于什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9643770/