Ouvrir le menu principal

MacGeneration

Recherche

La sortie de Swift 6 avec Swift Concurrency se rapproche

Florent Morin

vendredi 22 mars 2024 à 10:00 • 4

Logiciels

Il y a 3 ans, Apple nous présentait Swift Concurrency, une évolution forte de Swift 5 qui annonçait le début d’un long chemin vers Swift 6. En parallèle, le langage s’est doucement, mais sûrement ouvert à d’autres plateformes, notamment embarquées. Et nous y sommes aujourd’hui : toute les conditions sont désormais réunies afin de passer à une nouvelle version majeure du langage.

Swift Concurrency : gestion optimale des tâches parallèles

Nous en avions déjà parlé à sa sortie : Swift Concurrency améliore l’efficacité des tâches exécutées en parallèle. Cela passe d’abord par une meilleure orchestration au niveau du code de ces tâches qui avanceront en parallèle.

Imaginons une application qui permet de télécharger des images afin de les afficher à l’écran. Lorsque l’utilisateur appuie sur un bouton « Télécharger », plusieurs actions vont être enclenchées en parallèle. Une tâche va se charger de récupérer l’image, mais une autre va afficher un indicateur de chargement. Cela donne une réponse immédiate à l’utilisateur et évite de bloquer l’app pendant le chargement.

Vision (pro) schématique du procédé.

Sur le plan technique, l’action de l’utilisateur sur l’interface est placée dans le fil d’action qui a la plus haute priorité, nommé « Main Actor ». En parallèle, la tâche de gestion d’accès aux données va réaliser plusieurs opérations successives : elle va d’abord vérifier si l’image demandée existe déjà sur le stockage local. À défaut, elle ira la télécharger sur le web, via une autre tâche. Sans entrer dans les détails trop techniques, on peut utiliser les « acteurs » pour faire en sorte qu’un téléchargement ne soit initié qu’une seule fois et que son résultat soit retourné aux différents appelants.

Cet article est réservé aux membres du Club iGen


Rejoignez la plus grande communauté Apple francophone et soutenez le travail d'une rédaction indépendante. Le Club iGen, c'est:

  • des articles de qualité rien que pour vous
  • un podcast exclusif
  • pas de publicité
  • un site dédié !

Rejoignez le Club iGen

Soutenez le travail d'une rédaction indépendante.

Rejoignez la plus grande communauté Apple francophone !

S'abonner

Pas d'écran pour les enfants de moins de 3 ans

08:29

• 2


Le Prime Day d'Amazon durera 4 jours du 8 au 11 juillet

08:05

• 2


Dia : le successeur d'Arc mise tout sur l'IA

07:24

• 3


Nouveautés d’iOS 26, macOS Tahoe, Liquid Glass… Tous nos articles pour tout savoir sur la WWDC 2025

00:00

• 13


Les activités en direct dans macOS 26 ne demandent pas iOS 26 et pourraient fonctionner en Europe

16/06/2025 à 21:23

• 9


Découverte de Téléphone dans iOS 26 : nouvelle interface, appels inconnus, portages sur l’iPad et le Mac

16/06/2025 à 20:35

• 15


France Identité : l’intégration de la carte grise disponible en bêta

16/06/2025 à 19:51

• 99


La publicité s’infiltre finalement dans WhatsApp

16/06/2025 à 19:51

• 46


Comme promis, Apple sort de nouvelles bêtas… pour iOS 18.6 et macOS 15.6

16/06/2025 à 19:20

• 13


Bug amusant ou blague non assumée ? Une mise à jour de Windows 11 ressuscite le son de démarrage de Vista

16/06/2025 à 18:57

• 16


Un triple écran 15,6 pouces, qui promet l'équivalent de 43 pouces en 48:9

16/06/2025 à 18:07

• 3


Shadow, le PC dans le cloud, fait évoluer ses offres avec une pseudo RTX 4060

16/06/2025 à 16:58

• 19


Le PCI-Express 7.0 (256 Go/s) arrive alors que le PCIe 6.0 ne va pas se démocratiser avant 2030

16/06/2025 à 15:39

• 8


Grosse panne sur les réseaux mobile et fixe de SFR

16/06/2025 à 14:54

• 54


Un Steam Deck caché dans un clavier Apple pour l'utiliser avec des lunettes AR

16/06/2025 à 13:00

• 13


En Allemagne, le Schleswig-Holstein va abandonner les outils Microsoft comme Teams ou Office

16/06/2025 à 11:38

• 59