gpt4 book ai didi

swift - observeSingleEvent 不会在 swift 循环下被调用

转载 作者:行者123 更新时间:2023-11-28 13:26:18 24 4
gpt4 key购买 nike

我试图在快速循环下调用“observeSingleEvent”,但它在本地循环完成后被调用

func fetchAllComments(){

let myGroup = DispatchGroup()
DispatchQueue.main.async {
myGroup.enter()
for index in self.spotVideos {
var id = String(index.videoId)
print(id)
var count = 0
self.videoRef = rootRef.child(id)
self.videoRef!.observeSingleEvent(of: .value) { snapshot in
print(snapshot.childrenCount)
myGroup.leave()
}
myGroup.wait()
}

myGroup.notify(queue: .main) {
print("Finished all requests.")
}
}
}

最佳答案

您应该在循环之后使用 myGroup.enter()。进入的次数取决于离开的次数。如果你的循环运行 3 次,应该有 3 次进入和 3 次离开,在你的情况下你有 1 次进入所以当它得到一次离开时,它会通知。

  for index in self.spotVideos {
myGroup.enter()
...
}

关于swift - observeSingleEvent 不会在 swift 循环下被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58307575/

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