/* Page prose (de) */
"WrappingUp" = "# Zusammenfassung\n\nAbhängigkeiten verschaffen dir eine korrekte Reihenfolge und eine Race-freie Datenübergabe zwischen Operationen; Abbruch und Callback-getriebene Arbeit sind der Ort, wo sich die manuelle Buchführung stapelt. Fast jeder Fallstrick unten ist ein Schritt, den du von Hand erinnern musst: das Abbruch-Flag prüfen, auf jedem Pfad **finished** erreichen, dich gegen eine abgebrochene Abhängigkeit absichern. Beachte, wie viel es zu erinnern gibt, denn diese Buchführung ist *genau* das, was moderne Swift-Nebenläufigkeit automatisiert, und das moderne Modell ist der Ort, an dem du sie endlich ablegst.\n\n* `addDependency(_:)` erzwingt die Reihenfolge: Eine abhängige Operation startet nicht, bis alle ihre Abhängigkeiten `isFinished` melden, aber sie ordnet die Arbeit, sie bewegt keine Daten. Verdrahte die Ausgabe selbst nach vorn und sichere dich gegen eine **abgebrochene Abhängigkeit** ab (immer noch \"fertig\", möglicherweise mit einer `nil`-Ausgabe), bevor du sie verwendest.\n* Weil eine Abhängigkeit zwei Operationen zeitlich vollständig trennt, ist das Weitergeben von Daten von einer zur nächsten Race-frei. Halte Abhängigkeiten in eine Richtung fließend: Ein Zyklus sorgt dafür, dass beide Operationen für immer nicht *ready* werden.\n* Abbruch ist **kooperativ**: `cancel()` setzt nur `isCancelled`. Dein `main()` muss das Flag vor langsamen Schritten und in Schleifen prüfen und früh zurückkehren, sonst stoppt nichts.\n* Eine schlichte `Operation` ist \"fertig\" in dem Augenblick, in dem `main()` zurückkehrt, falsch für Arbeit, die in einem späteren Callback abgeschlossen wird.\n* Eine **asynchrone Operation** überschreibt `isAsynchronous`, treibt die Zustandsmaschine `ready → executing → finished` von Hand an und feuert KVO-Benachrichtigungen, damit die Warteschlange es bemerkt. Sie muss auf jedem Pfad **finished** erreichen, Abbruch eingeschlossen, sonst stockt die Warteschlange dahinter, und erfasse `[weak self]` im Callback.\n* `completionBlock` läuft, sobald eine Operation fertig ist, auf irgendeinem Thread und sogar für abgebrochene Operationen.\n\n---\n\n## Als Nächstes\n\nDas nächste Kapitel, [Warum moderne Nebenläufigkeit](Why%20Modern%20Concurrency.playgroundchapter/Overview), zeigt, warum moderne Nebenläufigkeit existiert: das Callback-Problem klar herausgestellt, und was strukturierte Nebenläufigkeit an all dem behebt, was du gerade von Hand gebaut hast.\n\n[Zurück](@previous)  |  Seite 7 von 7";
