Création d'une file d'attente concurrente
let concurrentQueue = DispatchQueue(label: "queuename", attributes: .concurrent)
concurrentQueue.sync {
}
Créer une file d'attente en série
let serialQueue = DispatchQueue(label: "queuename")
serialQueue.sync {
}
Obtenir la file d'attente principale de manière asynchrone
DispatchQueue.main.async {
}
Obtenir la file d'attente principale de manière synchrone
DispatchQueue.main.sync {
}
Pour obtenir un des fils de fond
DispatchQueue.global(qos: .background).async {
}
Xcode 8.2 beta 2 :
Pour obtenir un des fils de fond
DispatchQueue.global(qos: .default).async {
}
DispatchQueue.global().async {
// qos' default value is ´DispatchQoS.QoSClass.default`
}
Si vous voulez apprendre à utiliser ces files d'attente, consultez ce document. réponse
2 votes
Duplicata possible
0 votes
Swift 4 a 3 paramètres supplémentaires pour créer une file d'attente en série. Comment les utiliser pour créer une file d'attente en série ? DispatchQueue.init(label : , qos : , attributes : , autoreleaseFrequency : , target : )
0 votes
@nr5 Les files d'attente sont sérielles par défaut, il est donc suffisant d'utiliser simplement
DispatchQueue(label: "your-label")
pour une file d'attente en série. Les paramètres supplémentaires ont tous des valeurs par défaut.