Je crée une application qui implique de nombreux appels de service Web. J'utilise NSOperation pour exécuter les appels de service Web. Il y a plusieurs vues dans l'application et j'appelle le web-service chaque fois que la vue se charge. Puisqu'il s'agit d'une navigation, si l'utilisateur décide de revenir à la vue précédente avant même que l'opération ne soit terminée, une autre opération entre dans la file d'attente et attend l'achèvement de l'opération précédente. Est-il possible d'empêcher l'exécution de l'opération précédente lorsque son affichage change? pls aiderSuppression de NSOperation de la file d'attente lors de la modification des vues
1
A
Répondre
1
Avez-vous essayé quelque chose comme ça dans votre contrôleur de vue:
- (void)viewWillDisappear:(BOOL)animated {
[myOperation cancel];
...
}
Questions connexes
- 1. problèmes de file d'attente NSOperation
- 2. Suppression complète des vues de la mémoire
- 3. Modification de la couleur des vues d'alerte
- 4. JQuery Sortable Item Valeur de modification lors de la suppression
- 5. Suppression des vues de UIScrollView
- 6. Modification des vues de UISegmentedControl
- 7. EXEC_BAD_ACCESS lors de l'utilisation NSOperation
- 8. Programmation CPU, suppression des threads de la file d'attente
- 9. lors de la modification des données
- 10. Apparence des cellules de la table lors de la suppression
- 11. Exception lors de la suppression d'un message de la file d'attente Azure?
- 12. Suppression des attributs lors de la suppression par exemple
- 13. Informations ActiveMQ sur la suppression de la file d'attente
- 14. Modification des vues de la liste des indicateurs de performance clés de SharePoint
- 15. EXEC_BAD_ACCESS lors de la suppression de ModalViewController
- 16. Lors de la modification des sous-vues UIWindow, l'orientation n'est pas définie
- 17. Utilisation du glisser-déposer de l'interface utilisateur jQuery: modification de l'élément déplacé lors de la suppression
- 18. erreur lors de la suppression de la base de données
- 19. Modification de l'URL lors de la publication
- 20. Ajout de UITableView à la sous-vue lors de la modification de la barre de recherche
- 21. Modification de l'ordre des gestionnaires de polices lors de la compilation via la tâche ANT, impossible?
- 22. Conflit d'arborescence post-fusion de Subversion - "suppression locale, modification entrante lors de la fusion"
- 23. ForeignKey retourne id lors de la modification de la forme
- 24. Supprimer la file d'attente MSMQ lors de la désinstallation
- 25. Entrée toujours existante lors de la suppression
- 26. Suppression des sous-vues de UIScrollView et fuite de mémoire
- 27. Suppression des caractères supplémentaires générés lors de la réécriture
- 28. Erreur lors de la suppression des bitmaps [Android]
- 29. Problème lors de la suppression dynamique des contrôles
- 30. iPhone: Crash lors de la suppression des lignes UITableView
mais je dois retirer toutes les opérations en file d'attente. j'ai essayé [opQueue cancellAllOperations]; mais toujours s'écraser. Je pense que l'opération en cours d'exécution n'est pas annulée. J'ai donc essayé waitUntilAllOperations, mais cela prend trop de temps .. – Nithin
@Nithin: Annuler une opération n'arrête son fonctionnement que si l'opération vérifie le keypath isCancelled et arrête ce qu'elle fait en fonction de ce résultat. Il semble que vos opérations ne répondent pas à cela, donc -waitUntilAllOperationsAreFinished bloque jusqu'à ce qu'elles soient entièrement exécutées. Vous pouvez également regarder comment ASIHTTPRequest gère cela: http://allseeing-i.com/ASIHTTPRequest/ –