小编Fer*_*rox的帖子

调度组永远等待

我有一个使用 Alamofire 发出多个 HTTP 请求的函数。我想等待所有这些都完成才能返回一个值。但是,它卡在了dispatch.wait()处

class func getActionField(fieldid: String, completion: @escaping (_ res: [String: [Double]]) -> Void) {
        var resreturn: [String: [Double]] = ["temperature":[], "humidity":[], "ph":[], "light":[]]
        let dispatch = DispatchGroup()
        dispatch.enter()
        Alamofire.request(url + "aktionsdaten/temperatur/" + fieldid, method: .get).responseJSON{ response in
            resreturn["temperature"] = response.result.value as! NSArray as? [Double] ?? [0.0,0.0]
            dispatch.leave()
        }
        dispatch.enter()
        Alamofire.request(url + "aktionsdaten/light/" + fieldid, method: .get).responseJSON{ response in
            resreturn["light"] = response.result.value as! NSArray as? [Double] ?? [0.0,0.0]
            dispatch.leave()
        }
        dispatch.enter()
        Alamofire.request(url + "aktionsdaten/ph/" + fieldid, method: …
Run Code Online (Sandbox Code Playgroud)

grand-central-dispatch ios swift

7
推荐指数
1
解决办法
2781
查看次数

标签 统计

grand-central-dispatch ×1

ios ×1

swift ×1