一个极其简单的 Promise 库。
添加 Package.swift 依赖
.Package(url: "https://github.com/OpenKitten/Schrodinger.git", majorVersion: 1)
异步运行代码并等待其结果。支持抛出错误。
let promisedResult = async {
// Run your heavy code
throw An.error
return successfulResults
}
try promise.await()
并设置自定义超时。
// times out after a minute
let promise = async(timingOut: .seconds(60)) {
...
}