J'ai un bouton d'actualisation dans mon application et la méthode 'doRefresh
' qui s'exécute dans un thread d'arrière-plan. Maintenant, si l'utilisateur appuie sur double clic - méthode doRefresh
exécuter 2 fois et plus. Je veux que si l'utilisateur appuie sur double clic et plus de clics, tous les threads précédents arrêtent de travailler et terminer. Et la nouvelle méthode commence à s'exécuter dans un nouveau thread. Comment je fais ça?Utilisation d'un seul NSThread pour une méthode
Plus d'informations: Je travaille avec CoreData et analyse un long fichier XML pour les objets de relation de remplissage. Lorsque l'utilisateur appuie sur le bouton de rafraîchissement 10 fois par exemple, salut attraper erreur suivante:
reason: '*** Collection <__NSCFSet: 0x5b7dd50> was mutated while being enumerated.<CFBasicHash 0x5b7dd50 [0x1503400]>{type = mutable set, count = 8
Puis-je faire avec du fil de fond (performSelectorToBackground)? –
N'a pas essayé par lui-même, mais cela devrait fonctionner pour avoir annuler la variable dans l'objet passé à la méthode et garder la référence du dernier objet passé. –