Block强引用,weakSelf与strongSelf修饰

2016-12-01  本文已影响32人  代码诗仁

使用Block的时候,一般通常都会使用weakSelf与strongSelf修饰。(其实我一直都是在外部使用weakSelf修饰,难道strongSelf被吃了吗?)

__seakSelf typeof(self) weakSelf = self;

[self doSomeBlock:^{

         __strongSelf typeof(weakSelf) strongSelf = weakSelf;

        if(strongSlef){....}

}]

在block中需要对weakSelf进行strong,保证代码在执行到block中,self不会被释放,当block执行完后,会自动释放该strongSelf。

除了__weakSelf外,还有就是强行将block置成nil,打破循环链。

上一篇 下一篇

猜你喜欢

热点阅读