swift - deinit 不執(zhí)行導(dǎo)致多次進(jìn)來同一個頁面摊溶,通知注冊了多次墨礁。執(zhí)行通知做了多次事情
避免在閉包中循環(huán)引用
在閉包中, 要拿到對象本身的屬性, 必須要用到self關(guān)鍵字.
導(dǎo)致block對對象進(jìn)行了強(qiáng)引用, 而對象本身對block也是強(qiáng)引用, 這樣就形成了循環(huán)引用:(Self <-> Block)
解決辦法和OC中一樣, 將強(qiáng)引用self變?yōu)槿跻胹elf.
OC中解決辦法是
__weak SelfClass *weakSelf = self;
在Swift中類似的解決辦法是
weak var weakSelf = self