67 votes

Comment arrêter l’exécution de tâches dans une file d’attente d’expédition?

Si j’ai une file d’attente série, comment puis-je, à partir du thread principal, lui dire d’arrêter immédiatement l’exécution et d’annuler toutes ses tâches ?

18voto

adib Points 2315

Il n’y a aucun moyen de vider les tâches en attente d’une file d’attente de répartition sans implémenter vous-même une logique non triviale à partir d’iOS 9 / OS X 10.11.

Si vous avez besoin d’annuler une file d’attente d’expédition, vous feriez peut-être mieux d’utiliser `` quelles offres et plus encore. Par exemple, voici comment « annuler » une file d’attente :

14voto

Ryan Points 8958

C’est une question assez courante, à laquelle j’ai déjà répondu:

Problème de suspension de requête GCD

La réponse courte est que GCD n’a pas d’API d’annulation; vous devez mettre en œuvre votre code d’annulation vous-même. Dans ma réponse, ci-dessus, je montre essentiellement comment cela peut être fait.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X