正如你所知道的接口变量不需要在ARC模式的dealloc()方法中手动释放(self.var = nil),但块变量呢?如果块复制,那么我们也不需要释放它?不知道如何跟踪仪器的块变量内存泄漏。我们是否需要在Obj-C ARC模式下的dealloc方法中手动释放块变量?
任何人都知道,请提前分享和感谢。
正如你所知道的接口变量不需要在ARC模式的dealloc()方法中手动释放(self.var = nil),但块变量呢?如果块复制,那么我们也不需要释放它?不知道如何跟踪仪器的块变量内存泄漏。我们是否需要在Obj-C ARC模式下的dealloc方法中手动释放块变量?
任何人都知道,请提前分享和感谢。
[block copy]
由ARC处理。
如果您使用Block_copy
那么您必须使用Block_release
,但上面的表格是ARC的首选。
您的意思是[模块释放]将在ARC模式下隐式调用?谢谢。 – jianhua
是的 - 我懒得找现在的文档,但这正是我在Apple文档中读到的内容,当我弄清楚如何使用Block_copy和Block_release,然后意识到我不必。 – greymouser
太棒了,你是对的。谢谢。 – jianhua
无需在ARC模式下写入发布,并且如果您在具有ARC模式的文件中编写发布语句,则会发生该发布语句的错误。 – DharaParekh
self.var = nil(ARC模式)与[_var release]相同;(无ARC模式) – jianhua