aufgerufen Ich habe eine asynchrone Aufgabe o führen Sie die Berechnung und die Animation, während die Animation beginnt, die Warteschlange aussetzt, wenn die Animation beendet ist, wird die Warteschlange wieder aufgenommen. Aber aus irgendeinem Grund wird die DispatchQueue.main.sync nie aufgerufen.DispatchQueue main wird nicht
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()
}
}
Dies ist nur kleine Rechnung, werde ich das verwenden, um Aufgaben komplexer zu lösen als das
Ich sehe keine * async * Aufgabe. 'mainAsyncQueue' ist eigentlich' backgroundSyncQueue';) – vadian
Ok Variablenname Nazi: P Ändern – RodolfoAntonici