1
自我給出的方法是可以安全使用訪問塊
-(void) doSomeWork
{
self.abc = ...
self.doreme=...
}
是可以安全使用doSomeWork
塊內的方法?作爲
[weakSelf doSomeWork];//this is inside a block
當然,我擔心的是,doSomeWork
本身具有一定的參考自營事實。
自我給出的方法是可以安全使用訪問塊
-(void) doSomeWork
{
self.abc = ...
self.doreme=...
}
是可以安全使用doSomeWork
塊內的方法?作爲
[weakSelf doSomeWork];//this is inside a block
當然,我擔心的是,doSomeWork
本身具有一定的參考自營事實。
是的,在weakSelf
的塊內使用doSomeWork
是完全安全的。
當然,我擔心的是,
doSomeWork
本身具有一定的參考self
的事實。
投入,這將是「doSomeWork
本身使用self
」,以便從句子中刪除「參考」這個詞更好的辦法。在doSomeWork
內部創建的self
沒有「參考」:該方法通過作爲該類的實例方法參考「免費」self
。調用者將實際引用傳遞給方法;該方法執行時稱爲self
,但不創建新對象。換句話說,當您撥打[weakSelf doSomeWork]
時,在方法調用期間,您的weakSelf
變爲self
內部doSomeWork
。