/* Page prose (de) */
"WrappingUp" = "# Zusammenfassung\n\nEine Task Group ist das, wonach du greifst, wenn die Anzahl der parallelen Aufgaben zur Laufzeit entschieden wird statt fest im Quellcode zu stehen: Fächere die Arbeit auf und sammle dann die Ergebnisse ein, sobald sie fertig werden, wobei der strukturierte Geltungsbereich garantiert, dass nichts entwischt. Der Haken, über den die meisten stolpern, ist die *Reihenfolge* der Ergebnisse, also behalte die untenstehenden Erkenntnisse im Kopf, bevor du ihr vertraust.\n\n* Verwende eine **Task Group**, wenn die Anzahl der parallelen Aufgaben *dynamisch* ist; verwende `async let`, wenn es eine kleine *feste* Menge ist.\n* `withTaskGroup(of:)` öffnet die Gruppe, `group.addTask { }` erzeugt ein Kind pro Element, und `for await result in group` sammelt die Ergebnisse ein, sobald sie fertig werden.\n* Ergebnisse treffen in der **Reihenfolge des Abschlusses** ein, nicht in der Reihenfolge der Einreichung: Gib `(index, value)` von jedem Kind zurück und sortiere am Ende, wenn du die ursprüngliche Reihenfolge brauchst; indexiere die Ergebnisse nie nach der Reihenfolge des Eintreffens.\n* **Konsumiere die Gruppe, indem du sie durchläufst.** Wenn du `addTask` aufrufst, aber nie mit `for await` darüber iterierst, wartet die Gruppe am Ende des Geltungsbereichs trotzdem auf jedes Kind; du hast nur die Ergebnisse weggeworfen. (Für bewusst startende und vergessende Kinder verwende `withDiscardingTaskGroup`, damit du es mit Absicht sagst.)\n* `withThrowingTaskGroup` wirft den ersten Kind-Fehler weiter und bricht den Rest ab; fange ihn rund um die Gruppe ab. Um Fehlschläge stattdessen zu überspringen, gib ein Optional aus einer schlichten Gruppe zurück.\n* Die **strukturierte Garantie**: Der Geltungsbereich der Gruppe kehrt nie zurück, solange ein Kind noch läuft, also entwischt nichts; der Abbruch fließt hinab zu jedem Kind.\n* Für großes `N` **begrenze die Anzahl der laufenden Aufgaben** (fülle zunächst mit `N` Aufgaben und füge dann eine hinzu, sobald jede fertig wird), um Speicher und Last zu beschränken.\n\n---\n\n## Als Nächstes\n\nDas nächste Kapitel ist [Actors](Actors.playgroundchapter/Overview). Du hast über all diese parallelen Aufgaben hinweg sorgfältig gemeinsam genutzten veränderlichen Zustand vermieden; jetzt lerne den Typ kennen, der es *sicher* macht, ihn zu teilen.\n\n[Zurück](@previous)  |  Seite 9 von 9";
