Swift 3 warning for dispatch async
try qos: DispatchQoS.QoSClass.default
instead of priority: DispatchQueue.GlobalQueuePriority.default
DispatchQueue.global(qos: DispatchQoS.QoSClass.default).async { let url = URL(string: itemImageURL ) let data = try? Data(contentsOf: url!) if data != nil { DispatchQueue.main.async{ cell.advImage!.image = UIImage(data: data!) } } }
Instead of using priority parameter:
DispatchQueue.global(priority: DispatchQueue.GlobalQueuePriority.default).async { // ...}
use qos
parameter that uses a different enum DispatchQoS.QoSClass.default
but you can also use its enum value as just .default
:
DispatchQueue.global(qos: .default).async { // ...}
Swift 3 has brought many changes on GCD(Grand Central Dispatch).
If you're creating a property using the Dispatch Framework and updating the UI with some animation within a function it might look something like this.
let queue = DispatchQueue.global(qos: DispatchQoS.QoSClass.default) // dispatch_after says that it will send this animation every nsec queue.asyncAfter(deadline: when) { DispatchQueue.main.async(execute: { self.animate(withDuration: 0.5, animations: { self.image.setWidth(35) self.image.setHeight(35) }) }) }