Block循環引用

Block的循環引用

? 如果在Block中使用_strong修飾符的對象類型自動變量,當block從棧復制到堆時,該對象為Block所持有。這樣就容易引起循環引用。

為了避免循環引用可以使用_block變量、_weak修飾符以及_unsafe_unretained修飾符。?

_block和_weak的區別:

1._block可以修飾對象,也可以修飾基本類型。

2._weak只可以修飾對象。

3._block在block中可以被重新賦值,_weak不可以。

_unsafe_unretained不會被自動置空為nil。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容