await等待的异步任务去了哪里执行呢?
异步任务的执行机制
1. 任务调度(Task Scheduler)
import Foundation
func fetchData() async -> String {
await Task.sleep(2 * 1_000_000_000) // 模拟异步操作
return "Fetched Data"
}
func processData() async {
print("Start")
let data = await fetchData() // 等待异步任务完成
print("Received data: \(data)")
}
// 启动异步任务
Task {
await processData()
}2. 默认调度器和主线程
3. await 等待的任务在哪执行?
await 等待的任务在哪执行?4. 并发执行(Task Groups)
总结
Last updated