假设我们有三个对象:祖 parent 、 parent 和 child 。祖 parent 留住 parent , parent 留住 child , child 留住 parent 。祖 parent 释放 parent 。
在这种情况下会发生什么?
最佳答案
除非有其他对 parent 或 child 的引用,否则他们都会成为孤儿。但是父子之间的保留循环阻止了它们被释放并且它们成为浪费的内存。
child 永远不应该保留 parent 。如果有的话,请在子级中使用弱引用来维护对父级的引用。
https://stackoverflow.com/questions/19892245/