Swift 3 advertencia para envío async
Tengo este código:
DispatchQueue.global(priority: DispatchQueue.GlobalQueuePriority.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!)
}
}
}
Recibo esta advertencia en Swift 3:
'default' fue obsoleto en iOS 8.0: Use atributos de qos en su lugar
En la primera línea.
Aún no hemos encontrado una solución. ¿Alguien lo ha hecho?
4 answers
Intenta qos: DispatchQoS.QoSClass.default
en lugar de 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!)
}
}
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-09-30 12:09:34
En lugar de usar parámetro de prioridad :
DispatchQueue.global(priority: DispatchQueue.GlobalQueuePriority.default).async {
// ...
}
Uso qos
parámetro que utiliza diferentes enum DispatchQoS.QoSClass.default
pero usted también puede usar su valor de enumeración, como acaba de .default
:
DispatchQueue.global(qos: .default).async {
// ...
}
Swift 3 ha traído muchos cambios en GCD(Grand Central Dispatch).
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-10-13 10:22:47
Si está creando una propiedad utilizando el Framework de Despacho y actualizando la interfaz de usuario con alguna animación dentro de una función, podría verse algo como esto.
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)
})
})
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-11-04 14:29:50
El siguiente código se prueba para Swift 3.0 en Xcode 8.2.1
DispatchQueue.global(qos: .background).async {
let img2 = Downloader.downloadImageWithURL(imageURLs[1])
// Background Thread
DispatchQueue.main.async {
// Run UI Updates
self.imageView2.image = img2
}
}
Donde las propiedades de QoS son:
background, utility, `default`, userInitiated, userInteractive and unspecified
Consulte este documento de apple para más detalles.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-03-17 05:41:36