Como capturar o valor atual de uma variável para um bloco
Existe uma maneira de salvar o valor atual de uma variável para uso posterior em um bloco?
Por exemplo, para este código do Playground:
import UIKit
import XCPlayground
XCPlaygroundPage.currentPage.needsIndefiniteExecution = true
class testClass {
var i = 0
func test() {
let dispatchTime: dispatch_time_t = dispatch_time(DISPATCH_TIME_NOW, Int64(Double(NSEC_PER_SEC)) * 5)
dispatch_after(dispatchTime, dispatch_get_main_queue(), {
self.test(self.i)
})
i = 3
}
func test(i: Int)
{
print("i: \(i)")
}
}
let a = testClass()
a.test()
Existe uma maneira de salvar o valor atual dei
paradispatch_after
de uma forma que eu recebo a saídai: 0
ao invés dei: 3
?