最近項目需要對所有的控制器的銷毀情況進行檢查,其中遇到最多的就是block引起的,除了網上說的常用的那些,還有一個比較隱性的地方,我也是偶然發現的。
?一、 就是把block的回調定義成全局的,系統就會發出block代碼塊里面哪里引起了循環引用的警告,真的很神奇。
二、 就是把block里面的定義的全局變量換成屬性聲明的方式,然后用弱引用的方式,就可以解決了。
當時被坑了好久,網上搜的很多說的都是一樣,當然在ARC下大多視圖銷毀不了的原因就是block的循環引用問題,所以,不了解block的話一定慎用!!