薛定谔 (Schrodinger)

一个极其简单的 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)) {
	...
}