我有一個基于回呼的 API。
func start(_ completion: @escaping () -> Void)
我想在該 API 之上撰寫一個異步/等待包裝器,將實作推遲到基于原始回呼的 API。
func start() async {
let task = Task()
start {
task.fulfill()
}
return await task
}
顯然,這個代碼不連接-這不是真實的,有沒有方法fulfill上Task。
問題:有沒有辦法在 Swift 中使用非結構化并發來幫助我實作這一目標?
uj5u.com熱心網友回復:
您正在尋找延續。
以下是如何在您的示例中使用它:
func start() async {
await withCheckedContinuation { continuation in
start(continuation.resume)
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/354387.html
上一篇:有沒有辦法讓ListObjectsV2驗證s3物件型別/擴展名?
下一篇:Kotlin中運算子::的模擬
