/* Page prose (de) */
"SuspendThenResume" = "# `withCheckedContinuation`: aussetzen, dann fortsetzen\n\nÜberbrücken wir eine echt wirkende Legacy-API. Stell dir ein älteres SDK der Eck-Kaffeebar vor, das das heutige Tagesangebot auf die alte Art holt: ein Completion Handler, nach einer Verzögerung aus einer Hintergrund-Warteschlange geliefert. Du kannst es nicht ändern; du willst es nur mit `await` aufrufen.";
"SuspendThenResume-2" = "**Sieh es laufen:** `Asking the counter...` wird zuerst ausgegeben. Dann pausiert die Seite etwa vier Zehntelsekunden: Das ist `todaysSpecial()`, das an seinem `await` **ausgesetzt** ist und auf die Continuation wartet. Wenn die Completion von `fetchTodaysSpecial` feuert, liefert `resume(returning:)` den String, die async-Funktion wacht auf, und das Tagesangebot wird ausgegeben. Du hast einen Callback in `await` umhüllt, ohne die alte API anzufassen.\n\n* callout(Probier es aus): Ändere die `asyncAfter`-Verzögerung auf `1.5`. Die Zeile \"Asking the counter...\" wird immer noch zuerst ausgegeben, und die Pause vor dem Tagesangebot wird einfach länger.\n\n> **Warum `@Sendable` an der Completion?** Die Legacy-API springt auf eine Hintergrund-Warteschlange, und in Swift 6 muss eine Closure, die diese Grenze überquert, `@Sendable` sein (sicher, sie an einen anderen Thread zu übergeben). Es steht hier an der *simulierten* API, damit das Beispiel warnungsfrei bleibt; echte SDK-Completion-Handler, die du überbrückst, tragen es meist bereits. Sendable bekommt seine eigene Behandlung im Kapitel [Globale Actors und Sendable](Global%20Actors%20and%20Sendable.playgroundchapter/Overview).\n\n[Zurück](@previous)  |  Seite 2 von 8  |  [Weiter: Mit einem Result fehlschlagen](@next)";
