Junior — Middle
Dans quels cas et dans quels systèmes la annulation des tâches est-elle mise en œuvre?
sobes.tech IA
Réponse de l'IA
L'annulation des tâches est implémentée dans les systèmes où il est important de pouvoir interrompre des opérations longues ou inutiles afin de libérer des ressources et d'améliorer la réactivité de l'application. Sur iOS, cela se trouve souvent dans :
- URLSessionTasks — vous pouvez annuler une requête réseau si elle n'est plus nécessaire.
- OperationQueue et Operation — les opérations peuvent être annulées via la méthode
cancel(), ce qui permet d'arrêter l'exécution de la tâche si elle n'est pas encore terminée. - DispatchWorkItem — vous pouvez annuler l'exécution différée ou asynchrone du code.
L'annulation est utile, par exemple, lors du chargement de données pour une cellule de tableau qui a été défilée hors de la vue, ou lors de l'annulation d'une requête réseau lors de la fermeture de l'écran.
Exemple d'annulation d'une opération:
let operation = BlockOperation {
// Tâche longue
}
operationQueue.addOperation(operation)
// Plus tard
operation.cancel()