iOS 内存释放

1.使用 RxSwift 引起的相互引用:

如button 点击事件中使用 self, tap 事件中使用self

//button 点击事件的相互引用
button.rx.tap.bind { [weak self] in
    guard let strongSelf = self else { return }
    strongSelf.view.backgroundColor = .white
}.disposed(by: disposeBag)
//tap 点击事件引起的相互引用
let tap = UITapGestureRecognizer()
tap.rx.event.subscribe(onNext: { [weak self] _ in
    guard let strongSelf = self else { return }
    ......
}).disposed(by: disposeBag)
self.addGestureRecognizer(tap)

2. 使用 NotificationCenter 的block 形式

NotificationCenter.default.addObserver(forName: LENotificationName.WXLogin, object: nil, queue: OperationQueue.main) { [weak self](noti) in
     self?.wechatDidLoginNotication(noti)
}

3. Block 动画不会引起相互引用

.....待更新

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值