私は自分のアプリケーションの4つの異なる要求を持って、それらの3つがコールを1つだけ必要とし、最後は1から必要です - - 私は私を反復処理するとき10.Alamofire複数の要求の繰り返し
すべてが最後の要求まで正常に動作しますデータを収集し、電話をかける。これは、Class1ので私のコードです:
var data = ...
var points = ...
// I create a new group
let getPointGroup = dispatch_group_create()
// I iterate through my data
for d in data{
// I enter the group
dispatch_group_enter(getPointGroup)
dataService.getPoints(d.point), success: { points -> Void in
points.append(points)
// I leave the group so that I go to the next iteration
dispatch_group_leave(getPointGroup)
}
}
Alamofire要求がクラス2で次のようになります。
let headers = [
"Authorization": "Bearer \(token)",
"Content-Type": "application/x-www-form-urlencoded"
]
Alamofire.request(.GET, url, headers:headers)
.responseJSON { response in
switch response.result {
case .Success:
let json = JSON(data: response.data!)
print(json)
success(json)
case .Failure(let error):
print(error)
}
}
しかし、私は完全に反復し、ちょうど呼び出しを削除した場合、私は、GETリクエストを打つことはありませんAlamofireの要求は一度完全に動作します。
Alamofireの反復要求を解決する方法のアイデアはありますか?あなたがdispatch_group_wait
を使用する場合
編集
そうでもない複製、私はこれが実行されていない場合は別のクラスとの例では、以下のスニペットは本当に私の問題
デッドロックが発生している可能性があります。メインスレッド内でこのグループ分け 'dispatch_group_enter()'をしていますか?もしそうなら、あなたは[この回答](http://stackoverflow.com/questions/39264454/how-to-wait-until-all-nsoperations-is-finished/39265681#39265681)を見たいかもしれません。 – ozgur
@ozgur、その答えは良いですが、私は2つの異なるクラスにこれらのスニペットを持っているので、本当に私を助けません。 – user5855868
@Rob、.Failureは決して呼び出されません。 – user5855868