我使用swifttask,但我需要一个如何使用Task.all()的示例
我有:
let t1 = Task<String, PFObject, NSError> {
progress, fulfill, reject, configure in
let (obj, error) = getPFObject() // placeholder for my code
if ... {
fulfill(obj)
} else {
reject(error)
}
}
let t2 = Task<String, [PFObject], NSError> {
... code to retrieve array of PFObject
... fulfill or reject
}
Task.all([t1,t2]).progress {
oldProgress, newProgress in
println("When is this line executed?")
}.success { value -> Void in
println("Done successfully")
}.failure { ... in
println(errorInfo)
}
如何声明以下失败{... 何时做&#34;该行何时执行&#34;输出
答案 0 :(得分:1)
问题是我对t1和t2的定义。
在Swift / SwiftTask中,它们必须相同。 将t1更改为:
let t1 = Task<String, [PFObject], NSError> {
所以它也像t2一样处理PFObject数组。这删除了关于.failure的Xcode错误。