Ios Swift DispatchGroup.notify不';不要在操场上被叫

Ios Swift DispatchGroup.notify不';不要在操场上被叫,ios,swift,Ios,Swift,在调用API和在屏幕上加载一些数据时遇到问题之后,我注意到我需要一些东西来同步调用我的函数。我发现了DispatchGroup,并决定玩弄它,但它对我不起作用 以这段代码为例: let myGroup = DispatchGroup() for i in 0 ..< 5 { myGroup.enter() print("Finished request \(i)") myGroup.leave() } myGroup.notify(queue: .main)

在调用API和在屏幕上加载一些数据时遇到问题之后,我注意到我需要一些东西来同步调用我的函数。我发现了DispatchGroup,并决定玩弄它,但它对我不起作用

以这段代码为例:

let myGroup = DispatchGroup()

for i in 0 ..< 5 {
    myGroup.enter()


    print("Finished request \(i)")
    myGroup.leave()
}

myGroup.notify(queue: .main) {
    print("Finished all requests.")
}
让myGroup=DispatchGroup()
对于0..<5中的i{
myGroup.enter()
打印(“已完成的请求\(i)”)
myGroup.leave()
}
myGroup.notify(队列:.main){
打印(“已完成所有请求”)
}

如果我在Swift游乐场中运行此代码,则会打印5条“完成请求I”消息,但不会打印“完成所有请求”。这段代码基于一个堆栈溢出示例,所以我真的不知道为什么它不起作用。谢谢

在游乐场中,您需要指定它“永远”运行,以便等待异步通知等:

import PlaygroundSupport
... // your code
PlaygroundPage.current.needsIndefiniteExecution = true