J'ai une tâche asynchrone o effectuer le calcul et l'animation, lorsque l'animation commence, la file d'attente se suspend, lorsque l'animation se termine, la file d'attente est reprise. Mais pour une raison quelconque, le DispatchQueue.main.sync n'est jamais appelé.DispatchQueue main n'est pas appelée
self.someQueue = DispatchQueue(label: "Animation", qos: .background, attributes: DispatchQueue.Attributes.concurrent)
for index in stride(from: volumeObjects.count, to: -1, by: -1) {
mainAsyncQueue.sync{
self.dynamicViewModel.currentPercentile = Float(index)/Float(volumeObjects.count)
self.currentObjectIndex = index
print(index)
DispatchQueue.main.sync {
UIView.animate(withDuration: 1, animations: {
self.updateViewModelDynamicViewModel()
}, completion: { (finished) in
self.someQueue.resume()
})
}
self.someQueue.suspend()
}
}
Ceci est juste petit calcul, je vais l'utiliser pour résoudre des tâches plus complexes que
Je ne vois pas * * async tâche. 'mainAsyncQueue' est en fait' backgroundSyncQueue';) – vadian
Ok nom de la variable Nazi: P Changer – RodolfoAntonici