取消嵌套的Promise会发出警告:“已释放待处理的Promise”
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了取消嵌套的Promise会发出警告:“已释放待处理的Promise”相关的知识,希望对你有一定的参考价值。
我有以下代码段向我发出警告:取消基础任务时,“ pending promise释放”。
func pingGoogle() -> Promise<Void>
Promise seal in
firstly
URLSession.shared.dataTask(.promise, with: URLRequest(url: URL(string: "https://google.com")!))
.done _ in
seal.fulfill_()
.catch
seal.reject($0)
pingGoogle()
URLSession.shared.getAllTasks tasks in tasks.forEach $0.cancel()
我不确定为什么会发生这种情况,也不知道如何解决。有更多经验的人可以指出我正确的方向吗?
非常感谢您的帮助,谢谢!
答案
发现错误。因为默认情况下任务已取消,并且.catch
不会捕获取消错误,所以我的Promise被重新分配而从未被拒绝。
以上是关于取消嵌套的Promise会发出警告:“已释放待处理的Promise”的主要内容,如果未能解决你的问题,请参考以下文章