Je travaille sur l'application client-serveur. J'envoie une requête, après avoir reçu une réponse allant au thread backgound pour analyser les données, après toutes les données analysées, je vais aller au thread principal. Toutes les données écrites dans la transaction de domaine existent dans le thread d'arrière-plan mais dans le thread principal, elles sont vides. cela fait partie de mon code: au début, j'ai 20 objetsRoyaume avec GCD en utilisant
Alamofire.request(.GET, urlRequest).responseJSON(completionHandler: { response in
guard let dictionary = response.result.value as? [String : AnyObject]
else {
completion(response: false)
return
}
if dictionary["status"] != nil {
completion(response: false)
}
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), {
print("\(NSDate()) start parse feeds with offset")
self.parseArticle(dictionary, data: [])
print("\(NSDate()) finish parse feeds with offset")
UserSession.feedsLoaded = true
//here I have 40 objects
dispatch_async(dispatch_get_main_queue(), {
//here I have again 20 objects, which I had at start
completion(response: true)
})
})
})
func parseArticle(dictionary : [String : AnyObject], data : [String]) {
var startData = data
var endData : [String] = []
let realm = try! Realm()
let _ = try? realm.write() {here is the code of my parser}}
Le problème que les données en fil de commited arrière-plan ne figure pas dans domaine dans thread principal, comment puis-je gérer?
quelle est la question? s'il vous plaît mettre à jour votre poste – UmNyobe
la question est, où sont les données ajoutées au domaine? –