关于强弱引用的问题 strong,weak,assign

脑子越来越不好了,快忘了,简单整理一下记下喽

我先用a、b、c三个人来解释吧,a是持有者(小偷),b是被持有者(受害者),c是监控(警察),这里的警察比较变态一直监督的是b受害者。。。。。。。

a这个人如果strong持有b对象,(这时候可以理解为a小偷开始盯上受害者b了),这时候c是监视b身份的人,警察c发现b已经被人给盯上了,就在自己的小本本上面计数+1,表示b目前有一个人正在盯着使用。将来在b被释放之前,首先去警察c那里查看一下自己是不是还有被人盯着使用,如果没有了,也就是a小偷放弃b受害者的时候,受害者才可以被释放,如果c警察记录还有人盯着你使用呢,那b就不能被释放。a与b这种关系,就是如果a持有b,那么b就不能释放的状态就是strong强引用状态。只有a释放后,b才能释放。


关于weak使用,咱们通常在代理里面遇见这种情况。比如a让b去买一块糖,然后买回来之后交给a这件事情来举例。

如果老板a对员工b属于强引用的代理会出现下面这种状况(想想也不可能,老板与员工平起平坐平座只有在梦里了。。。),老板a让员工b去买糖了,然后员工b就巴拉巴拉跑到超市去买糖了,当b买糖回来后,发现老板a消失了,这时候员工b疯了,死心眼的他满世界找老板去了,然后程序就崩了。。。。

如果老板a对员工b属于weak的代理,那么情况就会好很多,老板a让员工b去买东西,然后b去买了,回来发现老板还在,就把糖交给a。如果发现老板a消失了,那b也不死心眼了,老板没了就没了吧,生活还是要继续的。


关于assign,只要不带*的,不是代理的,那么我们就全部使用assign就好了。。。。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值