原文:关于iOS Block当中为什么要用weakSelf和strongSelf的思考

场景:当你在某个界面请求网络数据的时候,用户不愿意等待点击了返回按钮,此时在Block当中用如下的方式使用weakSelf的话,有可能会奔溃 因为在并发编程的情况下,虽然在if判断的时候weakself不为空,但是不保证if语句里面的weakself不为空 ,所以为了安全起见要加上strongSelf 参考 。 那为什么加上strongSelf就可以保证self不为空了 因为如果self有效,那 ...

2018-05-11 15:15 0 1471 推荐指数:

查看详情

block里的self、weakSelfstrongSelf

ARC下,关于block里面使用self、weakSelfstrongSelf,理解一直没有特别的透彻,今天花时间研究了一下,总结如下: 其实一共就涉及到两个问题: 1.是否循环引用了 2.block里面的代码,不一定执行到哪行时,VC可能就释放 ...

Fri May 27 02:46:00 CST 2016 1 2159
ObjC的Block中使用weakSelf/strongSelf @weakify/@strongify

首先要说说什么时候使用weakSelfstrongSelf。 下面引用一篇博客《到底什么时候才需要在ObjC的Block中使用weakSelf/strongSelf》的内容: Objective C 的 Block 是一个很实用的语法,特别是与GCD结合使用,可以很方便地实现并发、异步任务 ...

Fri Feb 19 00:06:00 CST 2016 2 8105
weakSelfstrongSelf的区别和用处

block会copy要在block中使用的实变量,而copy会是变量的retainCount + 1,如若在不注意很容易造成循环引用。而所谓的循环引用的本质就是,两个对象相互引用,从而造成对象不能正常的dealloc。所以解决的办法就是让引用的一方是weak的,这样就使得相互引用的闭环被打破,能够 ...

Thu Jan 04 23:45:00 CST 2018 0 1262
IOS 看懂此文,你的block再也不需要WeakSelf弱引用了!

前言: 最近都在折腾 Sagit 架框的内存释放的问题,所以对这一块有些心得。 对于新手,学到的文章都在教你用:typeof(self) __weak weakSelf = self。 对于老手,可能早习惯了到处了WeakSelf了。 这次,就来学学,如何不用WeakSelf ...

Tue Jan 09 23:49:00 CST 2018 4 4988
什么时候在block中不需要使用weakSelf

什么时候在block中不需要使用weakself 问题 我们知道,在使用block时为了避免循环引用,通常需要使用weakselfstrongself,例如: 那么什么时候在block里调用self,不需要使用weak self呢? 答:在block本身不被self持有,而被别的对象 ...

Fri Dec 02 17:53:00 CST 2016 0 1448
iOS开发--_weak typeof(self) weakSelf = self

_weak typeof(self) weakSelf = self; (一)内存管理原则 1、默认strong,可选weak。strong下不管成员变量还是property,每次使用指针指向一个对象,等于自动调用retain(), 并对旧对象调用release(),所以设为nil等于 ...

Thu Apr 14 00:30:00 CST 2016 0 3423
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM