这只是我的事... 我认为弱引用的寿命与该引用的范围(在函数内或全局)有关。
因此,我想知道,只要将数据处理保持在特定范围内,那么使用弱与 strong 引用就可以了。正确?
我问...的原因是,有人告诉我,一个组织有一项默认情况下将阻止/关闭“弱化”的策略,以避免意外的保留周期。
答案 0 :(得分:2)
一个组织的政策是阻止/关闭“弱” 默认,以避免意外的保留周期。
该组织可能会制定一项政策,将被块捕获的引用保持“弱”,以避免保留周期。复制保留为属性的块本身。
在非常特殊的情况下,一个块导致一个保留周期:该块指的是一个对象(自身或其他对象),而那个对象(直接或间接)保留了该块。
在大多数时候,我们通过检查知道哪些物体将保留一个块。假设这是“ objectA”。保留周期问题是:块中引用的任何对象是直接还是间接保留“ objectA”?那些对象,没有其他对象,必须声明为弱点才能在块中使用。
始终声明它们都是弱者将能胜任,但是,IMO将使以后的本代码读者担心作者对自己的代码没有足够的了解。