编程语言
169
使用 async
标记异步运行的函数
funcfetchUserID(fromserver: String) async->Int { if server =="primary" { return97 } return501 }
您还可以通过在函数名前添加 await
来标记对异步函数的调用
funcfetchUsername(fromserver: String) async->String { let userID =awaitfetchUserID(from: server) if userID ==501 { return"John Appleseed" } return"Guest" }
使用 async let
来调用异步函数,并让其与其它异步函数并行运行。 使用 await
以使用该异步函数返回的值。
funcconnectUser(toserver: String) async { asynclet userID =fetchUserID(from: server) asynclet username =fetchUsername(from: server) let greeting =await"Hello \(username), user ID \(userID)" print(greeting) }
使用 Task
从同步代码中调用异步函数且不等待它们返回结果
Task { awaitconnectUser(to:"primary") } //Prints "Hello Guest, user ID 97"