使用ARC,Block的内存应该如何管理?

FoxBabe 发布于 2013年08月19日
无人欣赏。

现在逐渐在将之前的项目转为ARC,之前项目中使用block也比较多,转化为ARC的时候应该如何转换,应注意什么? block的内存是手动管理还是自动管理?

共4条回复
tinyfool 回复于 2013年08月19日

block也是自动管理吧

bluemigrant 回复于 2013年08月19日

注意一下retain cycle就可以了,其他地方没什么差别。ARC并且支持weak关键字的,原来使用_ _ block避免retain cycle的地方换成_ _weak

FoxBabe 回复于 2013年08月19日

@bluemigrant retain cycle具体应该是如何注意?除了上述说的将 block替换为weak外,其他还有么。另外我现在的疑惑是,一个方法我分别有一个成功和一个失败的block,异步执行block,但是在该方法中我都会将block进行copy一次,在回调的过程中,只要有其中一个block执行完成后,都会将这两个block release掉。那现在使用ARC,第一步的Copy操作还需要么?如果需要后面对于的release呢?

Elden 回复于 2013年08月20日

看 WWDC 2012 session 712

登录 或者 注册
相关帖子