Comment appeler la méthode avec délai et dans le fil d'arrière-plan
J'ai une méthode que je veux l'appeler après -viewDidLoad
et dans le thread d'arrière-plan. Est-il moyen de combiner ces deux méthodes:
[self performSelector:(SEL) withObject:(id) afterDelay:(NSTimeInterval)]
et
[self performSelectorInBackground:(SEL) withObject:(id)]
?
source d'informationauteur RomanHouse
Vous devez vous connecter pour publier un commentaire.
Grand Central Dispatch a
dispatch_after()
qui va exécuter un bloc au bout d'un certain temps sur une file d'attente spécifiée. Si vous créez un arrière-plan de la file d'attente, vous aurez la fonctionnalité que vous désirez.Essayez ce qui suit:
Code non testé
Être conscient que votre sélecteur de méthode ne doit pas utiliser UIKit (afin de ne pas mettre à jour l'INTERFACE utilisateur) ou de l'accès UIKit propriétés (comme image) si le sélecteur peut-être besoin de coup de pied d'un arrêt de travail au thread principal. par exemple,
Effectue un sélecteur sur le fil qu'il est appelé. Ainsi, lorsque vous appelez à partir d'un thread d'arrière-plan, il sera exécuté...
Vous pouvez le faire par exemple:
En quelque sorte, une solution mixte. Il serait préférable de s'en tenir avec un PGCD approche tho.