gpt4 book ai didi

ios - 当 Firebase 函数在 Swift 中结束时

转载 作者:可可西里 更新时间:2023-11-01 00:58:32 24 4
gpt4 key购买 nike

我在我的应用程序中使用了 Firebase,它通过大量用户查询并获取所需的特定数据,但是当它开始查询时 - 函数的其余部分也继续运行,而不仅仅是查询所以我可以不明白什么时候结束。

例如在这段代码中:

ref.observeEventType(.ChildAdded, withBlock: { snapshot in

let user = snapshot.value!.objectForKey("User")
let name = (user!["Name"])! as! String

print("name")

})
print("done")

假设我们在 Firebase 数据库中有 3 个用户 - 打印的代码将是:

done
nameuser1
nameuser2
nameuser3

(或者 done 将在 nameusers 之间的某个位置,取决于您的互联网连接 - 但它不会是最后一个)

最佳答案

Firebase 回调 block 是异步的,而打印行是同步的。这意味着只要从其底层 API 调用接收到返回数据, block 就会运行,而 block 外的“打印”(和其他)行将继续连续运行。

这就是打印行在回调 block 运行之前运行的原因。

关于ios - 当 Firebase 函数在 Swift 中结束时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39201596/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com