func authenticate(completion:(success: Bool) -> Void) {
let qos = Int(QOS_CLASS_USER_INITIATED.value)
dispatch_async(dispatch_get_global_queue(qos, 0)){() -> Void in
Alamofire.request(.POST, CONSTANTS.Domain+"/accounts", parameters: ["" : ""]).responseJSON { (req, res, json, error) in
dispatch_async(dispatch_get_main_queue()){
completion(success: true)
}
}
}
}
Oder kann ich den Versand einfach weglassen und meinen Code einfach halten?Muss ich meine Alamofire-Anrufe in dispatch_async umbrechen?
Nebenbei, wenn Sie eine globale Warteschlange benötigen, müssen Sie nicht den 'Wert' für die Qos erhalten und dann' Int' daraus erstellen. Es gibt eine Darstellung von 'dispatch_get_global_queue', die den 'qos_class_t' Parameter direkt übernimmt. In diesem Fall ist es problematisch, da 'NSURLSession'-basierte Lösungen überhaupt nicht zum Hintergrundthread gesendet werden müssen, sondern nur als zukünftige Referenz. – Rob