Código assíncrono em Swift

Código assíncrono nunca foi tão fácil

var image: UIImage!
Async.background {
// Do long running tasks here
let url = NSURL(string: "http://lorempixel.com/400/400/")
image
= UIImage(data: NSData(contentsOfURL: url))
}.main {
// update UI
println
("back to main thread")
self.view.addSubview(UIImageView(image: image))
}

let longWork = Async.background {
//work
}
//Other work. descided to cancel
longWork
.cancel()

//Start with delay
Async.main(after: 2) {
//Move to next screen
}
  • bloqueio da cadeia
  • definir atraso
  • blocos são canceláveis

Obtenha lib aqui.
https://github.com/duemunk/Async