IOS循环引用的理解

2018-08-09  本文已影响0人  水水兔

如: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永远不会被释放,造成内存泄漏。

上一篇 下一篇

猜你喜欢

热点阅读