如:A->B<=>C A B C的引用计数分别是1 2 1
B和C会循环引用,当A释放时,会发送release消息给B,B的计数减1,此时B的引用计数变为1,不会被释放,必须等持有对象C对B发送release消息,引用计算再减1=0时才会被释放,而C在等B对其发送release消息才会释放,此时形成循环等待,B和C永远不会被释放,造成内存泄漏。
如:A->B<=>C A B C的引用计数分别是1 2 1
B和C会循环引用,当A释放时,会发送release消息给B,B的计数减1,此时B的引用计数变为1,不会被释放,必须等持有对象C对B发送release消息,引用计算再减1=0时才会被释放,而C在等B对其发送release消息才会释放,此时形成循环等待,B和C永远不会被释放,造成内存泄漏。
本文标题:IOS循环引用的理解
本文链接:https://www.haomeiwen.com/subject/hycqbftx.html
网友评论