Swift中weak与unowned的区别

在Swift的闭包中为了避免循环引用的问题,通常用[weak self] 或者[unowned self],

前者是self是可选型

后者是非可选型,当self被释放后,如果执行self的方法会crash

建议使用:

推荐用法:

Tools.getData("URL").completed{ [weak self] result in

guard let strongself = self else { return }

self.setView()

}

你可能感兴趣的:(Swift中weak与unowned的区别)