/* Page prose (fr) */
"FanningOutWithTaskGroup" = "# Déployer en éventail avec `withTaskGroup`\n\nTu ouvres un groupe avec `withTaskGroup(of:)`, en lui indiquant le type que chaque enfant renverra. À l'intérieur, tu appelles `group.addTask { ... }` une fois par élément (autant de fois que tu veux) puis tu lis les résultats en itérant sur le groupe avec `for await`.";
"FanningOutWithTaskGroup-2" = "Lis la forme attentivement, car c'est tout le chapitre:\n\n* `withTaskGroup(of: Double.self)` ouvre le groupe. `Double` est ce que renvoie chaque enfant: ici, la luminosité d'une image.\n* `group.addTask { ... }` planifie une **tâche enfant**. Chacune s'exécute de façon concurrente avec ses sœurs, et chacune renvoie un `Double`.\n* `for await brightness in group` extrait les résultats **un à la fois au fur et à mesure qu'ils se terminent**. Le groupe est un `AsyncSequence` des valeurs de retour de ses enfants.\n* La valeur que tu `return` depuis la closure devient le résultat de toute l'expression `await withTaskGroup(...)`.\n\nPour sentir la récompense, compare-le avec l'exécution du même travail de façon séquentielle, chaque image attendue avant que la suivante ne démarre:";
"FanningOutWithTaskGroup-3" = "La version séquentielle attend chaque image avant de démarrer la suivante, donc 8 images à une demi-seconde chacune prennent environ **4 secondes**. La version avec task group ci-dessus démarre les 8 à la fois, donc elles se chevauchent et tout le lot se termine en environ **une demi-seconde**.\n\n* callout(Essaie): Passe `frameCount` à `40` dans le code ci-dessus et relance; le temps parallèle bouge à peine. Une simple boucle séquentielle sur 40 images, en revanche, grimperait vers les 20 secondes.\n\nRemarque *pourquoi* cela se chevauche même si ton appareil n'a qu'une paire de cœurs: chaque image ici passe surtout son temps à **attendre** (ce `Task.sleep` tient lieu de lecture d'un fichier), et, comme tu l'as vu dans le chapitre [Pourquoi la concurrence](Why%20Concurrency.playgroundchapter/Overview), les tâches qui attendent s'écartent les unes pour les autres. La vraie calibration est aussi du travail CPU, et là le groupe laisse également le système répartir les images sur les cœurs qui existent. Dans tous les cas, le groupe transforme un tas de travaux indépendants en un seul lot concurrent.\n\n[Précédent](@previous)  |  page 3 sur 9  |  [Suivant: Les résultats arrivent dans l'ordre d'achèvement](@next)";
