【发布时间】:2016-03-17 10:31:34
【问题描述】:
我想问一下这种情况下是否会发生retain cycle:
func someFunc() {
var aVar = SomeObj()
funcWithClosure(something, completionHandler: { _ -> Void in
aVar = SomeObj() // new
})
}
在这种情况下,我从闭包中引用 aVar。我只是想知道这是否会创建一个保留周期。如果属实,我应该通过以下方式修复:
func someFunc() {
var aVar = SomeObj()
funcWithClosure(something, completionHandler: { [weak aVar] _ -> Void in
aVar = SomeObj() // new
})
}
【问题讨论】:
标签: swift function cycle retain