Sunday, April 7, 2013

ios delegate你必須知道的事情:Circular retain

ios delegate你必須知道的事情:Circular retain
如果你是寫library給別人用的,記得把你的delegate設成assign property,這樣才不會造成circular reference
當你是要始用別人的library,記得在你自己dealloc的時候,把delegate設成nil,以避免crash的事情發生。


iOS blocks - 三個會造成retain cycle的anti patterns
我建議要解決retain cycle的最好思維就是想清楚從屬關係

__block MyClass* temp = …;    // MRC環境下使用
__weak MyClass* temp = …;    // ARC但只支援iOS5.0以上的版本
__unsafe_retained MyClass* temp = …;  //ARC且可以相容4.x以後的版本


.

No comments:

Post a Comment