Avatar ·

Comment utiliser correctement dispatch_after en Swift pour retarder l'exécution du code ?

Bonjour ! Je viens de commencer à apprendre Swift et j'essaie de comprendre Grand Central Dispatch. Avant, en Objective-C, j'utilisais souvent dispatch_after pour exécuter du code avec un délai, par exemple : ```objc dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ NSLog(@"2 secondes se sont écoulées"); }); ``` Mais maintenant, quand j'écris en Swift, je ne suis pas sûr de comment réécrire ce code correctement. J'ai essayé quelque chose comme : ```swift dispatch_after(dispatch_time(DISPATCH_TIME_NOW, Int64(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue()) { print("2 secondes se sont écoulées") } ``` Mais le compilateur se plaint de la syntaxe. J'ai vu que dans Swift 3 et versions ultérieures, beaucoup de choses ont changé dans l'API GCD, et l'ancienne méthode ne fonctionne plus. J'ai besoin d'effectuer un délai avant de mettre à jour l'UI (par exemple, afficher une alerte ou changer un label). Pouvez-vous me dire comment faire correctement en Swift moderne ? De préférence avec des exemples de code pour que je comprenne exactement comment cela fonctionne. Merci d'avance !