Block 中 strongSelf 的问题
来源:7-5 Block循环引用相关面试问题&面试总结

qq_老虎_daniu
2019-05-15
老师, 可以解答下 为什么有的时候 block 用 weakself 就行, 而有的时候要在 用 strong 修饰下呢,
写回答
5回答
-
清风淡墨白
2021-12-04
简单说为了在调用block的时候,防止weakself被释放为nil,所以block里面加强一下
00 -
瞅瞅
2019-11-27
我理解的外部__weak修饰,就如视频所说,是为了block捕获变量的弱引用,避免循环引用,避免内存泄漏。
内部__strong修饰,则是为了增加该变量的引用计数,避免其被提前释放,尤其在多线程切换的时候。否则后续的访问会出现野指针。
022020-05-05 -
qq_老虎_daniu
提问者
2019-05-15
还有就是老师, 有的时候, 为啥 还能用 self 呢, 这是sdwebimage里的代码
012021-12-04 -
qq_老虎_daniu
提问者
2019-05-15
有的在Block 里边 用了
__strong typeof(weakSelf) strongSelf = weakSelf;
, 不知道什么时候用 这个
00 -
qq_老虎_daniu
提问者
2019-05-15
AFnetworking 中的用法
00
相似问题